liulinzhu 2007-6-8 14:59
请教testcase设计方法
被测函数:
uchar fl_evt_tmr(struct TASK_IF_MSG *[color=blue]rcvmsg[/color])
{
[color=magenta]ful_port[/color] = [color=magenta]ful_getecb[/color] - [color=red]ECB_MUL_TM1[/color];
if([color=magenta]ful_telno[/color][[color=magenta]ful_port[/color]].dialwait_tmid != 0xff)
{
[color=lime]tm_inptm[/color]([color=magenta]ful_port[/color],[color=red]STOP[/color],0); /* RGW1.1 I */
[color=magenta]ful_telno[/color][[color=magenta]ful_port[/color]].event = [color=red]EVENT_DIAL_TO[/color];
return 0;
}
if([color=magenta]ful_telno[/color][[color=magenta]ful_port[/color]].hwtwait_tmid != 0xff)
{
[color=lime]tm_onhtm[/color]([color=magenta]ful_port[/color],[color=red]STOP[/color]); /* RGW1.1 I */
[color=magenta]ful_telno[/color][[color=magenta]ful_port[/color]].event = [color=red]EVENT_ONHOOK_TO[/color];
return 0;
}
if([color=magenta]ful_telno[/color][[color=magenta]ful_port[/color]].dialpause_tmid != 0xff)
{
[color=lime]tm_inttm[/color]([color=magenta]ful_port[/color],[color=red]STOP[/color],0); /* RGW1.1 I */
[color=magenta]ful_telno[/color][[color=magenta]ful_port[/color]].event = [color=red]EVENT_KETA_TO[/color];
return 0;
}
if([color=magenta]ful_telno[/color][[color=magenta]ful_port[/color]].trmlock_tmid != 0xff)
{
[color=lime]tm_loctm[/color]([color=magenta]ful_port[/color],[color=red]STOP[/color]);
[color=magenta]ful_telno[/color][[color=magenta]ful_port[/color]].event =[color=red] EVENT_ONHOOK_TO[/color];
return 0;
}
return 1;
}
其中[color=red]红色[/color]为常量,[color=magenta]紫色[/color]为全局变量,[color=lime]绿色[/color]为函数,[color=blue]蓝色[/color]为输入。
试问,在这里输入有用吗?个人认为只要测各分支里的[color=#ff00ff]ful_telno[/color][[color=magenta]ful_port[/color]].event 的值就行了,
不知大侠有什么更好的意见。谢谢啊~~~~~~
liulinzhu 2007-6-8 15:01
补充:还要加上测试最后一个“ return 1;”
xiaocuier 2007-6-8 16:00
输入在函数体内根本都没有用到,任何输入得到的结果都是一样的,所以说输入没有用处。
个人意见:还需要要测试一下ful_port 的值,例如在ful_port超出数组ful_telno[]范围的情况下,会有什么样的结果。比较规范的写法应该是开发在所有的if(...)前面要判断一下ful_port的值,如果超出了数组的长度,直接return;
xiaocuier 2007-6-8 16:07
另外对于输入参数,因为它是一个指针,虽然在函数体内没有用到,但是在函数体外,使用它之前应该有一个初始化的过程,就是定义这个指针,我们需要检查一下函数使用完之后有没有把指针释放掉。
做开发的时候经常碰到这类问题,如果没有释放,会有很大的内存消耗。
希望对你有所帮助
liulinzhu 2007-6-8 17:08
回复 #4 xiaocuier 的帖子
哇塞
得到你的指点,我感到非常荣幸哦。
这正是我作为新手需要注意的
再次感谢xiaocuiersdlkfj2
xiaocuier 2007-6-8 17:31
sdlkfj2 不客气,作测试我也是新手。大家共同进步!
liulinzhu 2007-6-11 10:04
我也是新手~~
差距咋就这么大呢!!sdlkfj9 sdlkfj9
caocao668 2007-6-11 14:38
学习中
xinminghe 2007-12-25 17:23
学习中