东华大学软件测试作业整理_8184
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、当测试结果与测试用例中描述的有所不同时,有哪些可能的原因呢?为什么说测试的初始状
态很重要?
答:测试环境不同,测试步骤出现差异,测试系统本身bug。
因为在进行测试时,需要保证测试对象的初始状态一致,如果初始状态不一致或者出现错误那么
接下来的测试都会收到影响从而导致测试结果的错误。
二、采用等价类和边界值设计方法,为以下的“字符串替换”函数设计黑盒测试用例:
void replace(char s1[],char s2[],char s3[])
函数规格说明:
(1) replace函数的功能是将s1 字符串中的所有s2 字符串 (s2 字符串可以是s1 字符串的
字串 ) 替换为 s3 字符串,替换结果保存在s1 字符串中。
(2) s1、s2、s3字符串的长度都不超过1024 字节;
(3)s1 、s2 、 s3 字符串组成只能是英文字母、数字和空格(空格作为单词间的分隔符)。
答:
等价类划分:有效等价类无效等价类
S1:{ 1,2, ,,1024 }
{ 0 }, {1024, }
S2:{1,,,S1}
{0} , S2>S1
S3:{1,,,S1 }
{0} , S2>S1
{ 英文字母,数字和空格}
{ 非法字符 }
用例设计:
输入输出
S1=512,S2=100,S3=100替换成功
S1=1025;S2=100,S3=100输入报错
S1=512; S2=0; S3=100输入报错
S1=512; S2=2048;S3=1024输入报错
S1=100; S2 =S3=50没有改变
S1=$$$$;s2=$$$;S3=111;输入报错
三、对于“成绩统计”函数:
double成绩统计(char filename [])
要求:
(1)列出测试需求;
(2)采用等价类和边界值设计方法设计黑盒测试用例。
函数规格说明:
(1)成绩统计函数计算 filename 所指定的文本文件中所有学生的平均成绩并返回,计算结果
为小数(保留小数点后两位,小数点后多余的位数四舍五入);
(2)filename 字符串最长 255 个字符,只允许是大小写英文字符、数字和下划线;
(3)filename 必须是文本文件,文件名后缀必须是.txt ;
(4) filename中的第一个数字是数目,取值为1-1000( 表示文件中保存的学生数目) ,其后
是相应的学生成绩;学生成绩必须是 0-100 的整数;成绩间以一个或多个空格分隔;成绩可
以是单行也可以是多行;成绩不要求是排序的。
例如: 4 608098 100
或: 56098
80 98
100
(5)成绩统计函数应能运行于 Windows 和 Linux 两种操作系统;
(6)对于不符合规范的输入系统应提示相应的错误。
测试需求:
功能需求:输入文件名,文件包含学生数目和成绩,输出平均成绩,保留小数点后两位,小数点
后多余的位数四舍五入。
友好性需求:输入不合规范的字符系统提示相应错误
兼容性需求:在 windows 和 linux系统上运行程序
以上需求来源:函数规格说明。
用例设计:
等价类划分:
有两个输入:文件名与文件
有效等价类无效等价类
文件名0
{.txt结尾的文本文件}{非txt后缀 }
文件1<=文件第一个数字<=1000{ 非数字},数字 <1,数字>1000
0<=学生成绩 <=100
学生成绩为整数学生成绩 <0,学生成绩
非整数
>100
用例设计:输入文件名输入文件输出
1.filename = aaa 3 60809076.67
2.Filename >=255 3 60.5 80 90输入错误
3.Filename.cpp 2 a 3文
件格式错误输入错误
4.filename = aaa0-1 90输入错
误
5.filename = aaa2101 90输入错误
以上用例在windows 与 linux下分别执行
1、为什么需要尽早地进? 行测试 ? 答 :在软件?生命周期的活动当中,测试活动应该越早开始越好,越晚发现问题的代价
就越?高。这是因为 :
1、如果软件研发后期发现框架问题,可能导致很多模块代码需要返?工
2、越晚开始 ,测试?人员对软件的了解越少,?无法深?入测试 ,可能漏测严重
3、如果在软件研发快结果才开始测试,可能投?入测试后的短期内会? 大量发现问题 ,不利于版本稳定
2、“在测试?工作中对所有被测试功能模块都? 一视同仁 ,对所有被测试功能都进? 行充分的测试”这句话是否正确 ?请简述原因。
答: 错误。
1.软件测试?工作量庞? 大,不可能穷尽所有测试 ,也不可能对每个功能都充分的测试 ,所以必然要依照测试
需求选择某? 一些重要的功能进? 行测试。
2.不可能对所有功能模块? 一视同仁 ,应当依照测试计划中的优先级先测试重要模块 ,对于 ? 一些优先级低
的 ,不太重要的模块放在后? 面再测 ,这样可以尽早发现重要的 bug,提?高效率。
3、软件测试的风险主要体现在哪?里?
答 : 软件测试不可能覆盖所有测试点 ,所以对于某些实效造成巨? 大损失 ,故障引发?高成本的系统来说 ,软件
测试就会伴随着? 高风险 ,这就需要对测试? 工作量与可达到的测试程度保持适当的联系 ,使得风险尽量降低。