软件测试代码
练习2:创建测试用例检查电子邮件问题 为以下代码编写测试用例,检查名称和电子邮件地址。设计测试用例验证电子邮件地址是否有效。#include #include void main(){char name[25], email[25], *ans;printf(“\n 输入个人姓名:”);gets(name);fflush(stdin);printf(“\n 输入个人电子邮件地址:”);gets(email);fflush(stdin);printf(“\n”);printf(“ 姓名: “);puts(name);printf(“\n”);ans=strstr(email,”@”);if(ans){printf(“ 电子邮件:“);puts(email);}else{printf(“无效的电子邮件地址!”);printf(“\n”);}}
测试需求分析参考:RQ1: 确保电子邮件地址含有“@”;RQ2: 确保符号“@”只出现一次;RQ3: 检查符号“.”;RQ4: 符号“_”不能出现在电子邮件地址的开头。
白盒测试(基本路径法):第一步:画出程序流程图char name[25], email[25], *ans;printf(“\n 输入个人姓名:”);gets(name);fflush(stdin);printf(“\n 输入个人电子邮件地址:”);gets(email);fflush(stdin);
if(ans)
printf(“ 电子邮件:“);puts(email);}
printf(“无效的电子邮件地址!”);printf(“\n”);
printf(“\n”);printf(“ 姓名: “);puts(name);printf(“\n”);ans=strstr(email,”@”);
123564NoYes
No
Yes
第二步:画出控制流图
第三步:计算圈复杂度V(G)=3
第四步:确定路径集路径编号经历节点Path11-2-3-4-6-1Path21-2-3-5-6-1第五步:生成测试用例,并在C语言编译环境中进行测试路径编号输入数据预期结果实际结果结论Path1123456@163.com123456@163.com123456@163.com有效邮箱Path2123256.com无效的电子邮箱地址无效的电子邮箱地址无效的电子邮箱地址
黑盒测试(等价类划分)第一步:划分有效类和无效类并进行编号输入条件有效类无效类电子邮箱地址确保电子邮件地址含有“@”(1)电子邮件地址中没有@(5)确保符号“@”只出现一次;(2???电子邮件地址中@出现不止一次(6)符号“_”不能出现在电子邮件地址的开(3)符号“-”出现在电子邮件地址开头(7)检查符号“.”(4)没有符号“.”符号“.”多次出现(8)第二步:设计测试用例序号电子邮件地址覆盖等价类预期输出1Fuyanyun123456@163.com(1)、(2)、(4)、(3)123456@163.com2com(5)、无效电子邮箱地址312345@@163.com(6)无效电子邮箱地址412345@163com(8)无效电子邮箱地址512345@163..com(8)无效电子邮箱地址6-12345@136.com(7)无效电子邮箱地址第三步:在C语言编译环境中运行程序并进行测试序号输入数据预期输出实际输出结论1Fuyanyun123456@163.com123456@163.com123456@163.com有效的电子邮箱地址2com无效的电子邮箱地址无效的电子邮箱地址无效的电子邮箱地址312345@@163.com无效的电子邮箱地址无效的电子邮箱地址无效的电子邮箱地址412345@163com无效的电子邮箱地址无效的电子邮箱地址无效的电子邮箱地址512345@163..com无效的电子邮箱地址无效的电子邮箱地址无效的电子邮箱地址6-12345@136.com无效的电子邮箱地址无效的电子邮箱地址无效的电子邮箱地址