Parasoft C++Test常见问题

Parasoft C++Test常见问题
1. 源代码编译正常,但创建C++test测试用例,执行用例时,文件中定义的静态全局指针变量值并没有被正确设置上值。
被测源代码 XX.CPP
static const char * PATH_STR=".C:\1.txt" ;

int fun1()
{
if( isdirnull(PATH_STR))
return;

}
虽然从代码上看,PATH_STR应当是有值的,但是调试用例发现,PATH_STR的值却为NULL。

找了高手,可能是测试工具生成的测试用例中,会将全局变量默认初始化为0.
所以解决方法真的很简单:只要在测试用例中正确设置那些全局变量值即可。

2 fopen 以 a+ w+方式打开文件总是返回NULL
通常a+\w+方式都能成功,因为文件存在时,可以打开进行写,文件不存在时会创建。 但是我用c++test测试时,fopen总是返回NULL。
查看errno、及其错误信息,结果errno也是0,即没有问题。

FILE *fp = NULL;
if ((fp =fopen("./test/1.txt", “r”)) == NULL)
{
printf(“open fail errno = %d reason = %s \n”, errno, strerrno(errno));
}

最终高人指点,原来c++test有三种桩函数:原函数,安全、用户自定义的。
fopen同时有原函数和安全的,所以会使用安全类型的桩函数,所以总是返回0了。
解决方法很简单:将那些希望调用原函数的安全桩函数注释掉即可。

3.测试用例由于执行时长超过了指定时长而被终止掉。
解决方法:修改测试用例执行的么个用例的最大执行时长,加大该时长,即可解决该问题。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

曹红杏

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值