51Testing软件测试论坛

标题: 请教testcase设计方法 [打印本页]

作者: liulinzhu    时间: 2007-6-8 14:59
标题: 请教testcase设计方法
被测函数:
uchar   fl_evt_tmr(struct TASK_IF_MSG *rcvmsg)
{
ful_port = ful_getecb - ECB_MUL_TM1;

if(ful_telno[ful_port].dialwait_tmid != 0xff)
{
  tm_inptm(ful_port,STOP,0);  /* RGW1.1 I */
  ful_telno[ful_port].event = EVENT_DIAL_TO;
  return 0;
}

if(ful_telno[ful_port].hwtwait_tmid != 0xff)
{
  tm_onhtm(ful_port,STOP);  /* RGW1.1 I */
  ful_telno[ful_port].event = EVENT_ONHOOK_TO;
  return 0;
}

if(ful_telno[ful_port].dialpause_tmid != 0xff)
{
  tm_inttm(ful_port,STOP,0);  /* RGW1.1 I */
  ful_telno[ful_port].event = EVENT_KETA_TO;
  return 0;
}

if(ful_telno[ful_port].trmlock_tmid != 0xff)
{
  tm_loctm(ful_port,STOP);
  ful_telno[ful_port].event = EVENT_ONHOOK_TO;
  return 0;
}

return 1;
}

其中红色为常量,紫色为全局变量,绿色为函数,蓝色为输入。

试问,在这里输入有用吗?个人认为只要测各分支里的ful_telno[ful_port].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
学习中




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2