我写的驱动,大家多来评!
题目是这样的:现有下面三个函数
函数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的和
returnx+y;
函数C:
加法函数int sub(int x,int y),返回x和y的差
returnx-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;
} sdlkfj3 #include <iostream.h>
void main()
{
int ctr(int x,int y);
============================
让我很奇怪的一点,你为什么把这个函数体的声明放到main里面呢? 不错,向你学习。 误解了,我还以为是你写的底层的驱动程序,呵呵。
函数申明最好放在外面,这样代码更整洁! 个人认为如果输出failed的时候,最好可以把abc和测试结果一起输出 既然C++是不是可以用类呢 好象写的不对 老大,这么写测试代码的话,在实际工作中是做不到的,不会有那么多时间给你。
还是用自动生成测试代码的工具吧(注意,是自动生成测试代码,不是自动生成用例,由于工具不可能自动了解代码功能,用例需要人工定义)。免费的,商业的,都有呀,这才现实。 这么写太累了,有没有自动生成java测试代码的工具呀 嘿嘿,理论上你这么写完全正确,在实际的工作中不行,我们现在基本上,直接调用函数测试
页:
[1]