google搜索 51Testing站内搜索                    软件测试门户 | 软件测试培 训 | 文章资料精选 | 软件测试论坛 | 软件测试博客 | 测试招聘求职 
打印

[讨论] 我写的驱动,大家多来评!

本帖已经被作者加入个人空间

我写的驱动,大家多来评!


题目是这样的:
现有下面三个函数
函数A:
主控函数int ctr(int x,int y),对应伪码为,
if(x不小于y)
    result=add(x,y);
else result=sub(x,y);
return result;

函数B:
加法函数int add(int x,int y),返回x和y的和
return  x+y;

函数C:
加法函数int sub(int x,int y),返回x和y的差
return  x-y;

请用至顶向下测试策略对三个函数进行测试,写出对应的驱动函数模块

下面是我写请大家看看是不是正确,多指点:

#include <iostream.h>
void main()
{

int ctr(int x,int y);


int a,b,c;


cout<<"
请键入用例输入数据:"<<endl;


cin>>a>>b;


cout<<"
请键入用例预期输出:"<<endl;


cin>>c;


cout<<"
桩模块的预期输出为:"<<endl;


cout<<c<<endl;


//d=;


if (c==ctr(a,b))


cout<<"
符合预期输出,测试通过";


else


cout<<"
与预期输出不同,测试未通过"<<endl;


return;

}


//被测模块
int ctr(int x,int y)
{

int stub_add(int x,int y);


int stub_sub(int x,int y);


int result;


if(x>=y)


result=stub_add(x,y);


else


result=stub_sub(x,y);


return result;

}


//桩模块

int stub_add(int x,int y)
{

int m;


m=x+y;


cout<<"
桩模块运行的实际输出为:"<<endl;


cout<<x<<"+"<<y<<"="<<m<<endl;


return m;

}


int stub_sub(int x,int y)
{

int m;


m=x-y;


cout<<"
桩模块运行的实际输出为:"<<endl;


cout<<x<<"-"<<y<<"="<<m<<endl;


return m;

}
不要为自己的哨子付出过多!
http://www.51testing.com/?119676

TOP

sdlkfj3

TOP

#include <iostream.h>
void main()
{

int ctr(int x,int y);
============================
让我很奇怪的一点,你为什么把这个函数体的声明放到main里面呢?

TOP

不错,向你学习。

TOP

误解了,我还以为是你写的底层的驱动程序,呵呵。
函数申明最好放在外面,这样代码更整洁!

TOP

个人认为如果输出failed的时候,最好可以把abc和测试结果一起输出

TOP

既然C++是不是可以用类呢

TOP

好象写的不对

TOP

老大,这么写测试代码的话,在实际工作中是做不到的,不会有那么多时间给你。
还是用自动生成测试代码的工具吧(注意,是自动生成测试代码,不是自动生成用例,由于工具不可能自动了解代码功能,用例需要人工定义)。免费的,商业的,都有呀,这才现实。
C/C++单元测试工具Visual Unit
http://www.KaileSoft.cn

TOP

这么写太累了,有没有自动生成java测试代码的工具呀

TOP

嘿嘿,理论上你这么写完全正确,在实际的工作中不行,我们现在基本上,直接调用函数测试
唯我测试

TOP

 
当前时区 GMT+8, 现在时间是 2008-9-8 11:25Copyright(C)上海博为峰软件技术有限公司 2001-2007 电话:021-64471599-8017
当您在访问网站、论坛及博客过程中遇到问题时可发送email:webmaster@51testing.com或发送论坛短信至管理员风在吹