2022年软件测试文档.docx

上传人:H****o 文档编号:56613035 上传时间:2022-11-02 格式:DOCX 页数:22 大小:344.31KB
返回 下载 相关 举报
2022年软件测试文档.docx_第1页
第1页 / 共22页
2022年软件测试文档.docx_第2页
第2页 / 共22页
点击查看更多>>
资源描述

《2022年软件测试文档.docx》由会员分享,可在线阅读,更多相关《2022年软件测试文档.docx(22页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选学习资料 - - - - - - - - - 软件测试报告一、问题描述:用 Java 实现求两整数的加、减、乘、除运算结果,要求两整数的范畴都是0,100;从键盘输入数m,数 n,判定他们的范畴,假设不在0,100范畴内,就输出提示语,要求重新输入,并且在做除法运算时, 当除数为 0 时,输出提示语,说明除数不能为 0;名师归纳总结 - - - - - - -第 1 页,共 16 页精选学习资料 - - - - - - - - - 将两数的范畴定在 0,100,以更好的进行边界值分析, 等价类测试等黑盒测试方法;为充分表达白盒测试的特点,有些地方有意用了if-else 语句, while

2、循环;另外,加、减、乘、除运算分别用了四个函数来运算,这样既可以在主函数中调用,又可以在 Junit 框架中分别对这四种运算进行测试;二、程序源代码:1. import java.util.Scanner; x,int y / 构造函数,初始化0100 范畴 内2. publicclass Computer 3. privateinta ; 4. privateintb ; 5. public Computer int6. / 留意: Juint中需要输入测试值在7. a=x; 8. b=y; /加法9. 10. publicdouble add 11. 12. returna+b; 13.

3、14. publicdouble minus / 减法15. 16. returna- b; 17. 18. publicdouble multiply / 乘 法19. 20. returna* b; 21. 22. publicdouble divide /除法,要求除数不能为0 ,否就输出提示语23. 名师归纳总结 24. if b .=0 a/ b; 除数不能为 0! ; 第 2 页,共 16 页25. return26. elseout .println27. System.- - - - - - -精选学习资料 - - - - - - - - - 28. return 0; 29.

4、 30. publicstaticvoid mainString args 31. 32. Scanner scanner = null ; 33. scanner = new ScannerSystem. in ; 34. System. out .println 请输入 0100 的两个 m,n 整数 : ; 35. System. out .println 请输入第一个数: ; 36. while true / 假设输入值不在要求范畴内,就有循环直到输入正确为止37. int m = scanner.nextInt; 38. if m=0&m=0&n=0&m=0&n=10 F T c 出

5、口、语句掩盖:每个可执行的语句必需至少执行一次,就测试用例:名师归纳总结 m1=-1,m2=1表 7 语句掩盖测试用例条件取值第 8 页,共 16 页测试用例通过路径;n1=101 ,n2=99 a,f,b,d,c F1,T1,F2,T2 - - - - - - -精选学习资料 - - - - - - - - - 、判定分支掩盖:每个判定必需至少获得一次“ 真” 值和“ 假” 值,就测试用例:表 8 判定分支掩盖测试用例通过路径条件取值m=1,n=99 a,b,c T;Tm1=-1,m2=1,n=99 a,f,b,c F1,T1;T2 m=1,n1=-1,n2=99 a,b,d,c T;F1,

6、T1 m1=-1,m2=1;n1=101,n2=99 a,f,b,d,c F1,T1;F2,T2 、条件判定掩盖:每个判定中的每个条件的全部可能值 真 / 假至少显现一次并且每个判定本身的结果真 / 假也至少显现一次,就测试用例:表 9 条件判定掩盖测试用例通过路径条件取值m=1,n=99 a,b,c T,T 、路径掩盖:测试用例要求掩盖全部可能的路径:表10 路径掩盖测试用例 通过路径 条件取值m1=-1,m2=1;n1=101 ,n2=99 a,f,b,d,c F1,T1,F2,T2 2.基路径测试: 为简便画图,开头点从主要代码第 36 行开头,其他无分支节点用省略号表示名师归纳总结 -

7、 - - - - - -第 9 页,共 16 页精选学习资料 - - - - - - - - - 1从节点 1 到节点 36.333 534544从节点 43 到 51 45.555555名师归纳总结 所以:圈复杂度 VG= 56第 10 页,共 16 页- - - - - - -精选学习资料 - - - - - - - - - 4 个独立路径为 :P1:1,.,36,37,38.42,43.54,55,58,59,60 P2:1,.,36,37,56,57,58,59,60 P3:1,.,36,37,38.42,52,53,54,55,58,59,60 P4:1,.,36,37,38.42,

8、43.54,42,52,53,54,55,58,59,60 P5:1,.,36,37,56,57,58,36,37,56,57,58,59,60 三、Junit 动态测试:import junit.framework.TestCase; / 引入 Junit 框架中全部类public class ComputerTest extends TestCase private Computer a; / 定义变量private Computer b; private Computer c ; private Computer d; public ComputerTest String name su

9、per name; / 构造函数 , 使用 super 关键字直接引用父类TestCase 的构造函 数 protectedvoid setUp throws Exception super.setUp; / 建立环境, 可以进行一些测试数据的初始化,仍可以把数据库联接写在此处,以削减重复性工作,提高效率a = new Computer1,99; b = new Computer101,5; c = new Computer1,2; d = new Computer1,0; protectedvoid tearDown throws Exception super.tearDown; publ

10、ic void testComputer int x=1; int y=1; assertSame x,y; /assertSame 名师归纳总结 publicvoid testAdd a.add; / 加法测 试第 11 页,共 16 页assertEquals100.0, - - - - - - -精选学习资料 - - - - - - - - - publicvoid testAdd1 b.add; / 输入值超出要求范畴, 测试assertEquals106.0, 失败,由于要求 0100 范畴,所以,在构造 Computer y的范畴 函数时,要规定变量 x,publicvoid te

11、stMinus a.minus; / 减法测 试assertEquals-89,/ 预期值和结果 不相等 ,测试失败 publicvoid testMinus1 a .minus; assertEquals-89.0, public void testMultiply assertEquals 2.0, c .multiply; public void testMultiply1 Object tx = null ; try assertEquals 2.0, c .multiply; /c.multiply 的正常结果是,所以在此不应抛出异 常fail should have thrown

12、an exception ; / 上面不抛出反常,不执行fail catch Exception e tx = e; assertNotNulltx; / 断言 tx 不为空 , 就肯定有异 常 public void testDivide assertEquals 0.0, d.divide; / 因divide 函数中,当 d=0时,返回,所以这里 测试应当胜利,虽然期望得到“ 被除数不能为 0!” 的情形 名师归纳总结 - - - - - - -第 12 页,共 16 页精选学习资料 - - - - - - - - - publicvoid testDivide1 assertEqual

13、s0.5, c .divide; publictryvoid testEmpty c .divide; fail should have thrown an exception ; catchRuntimeException Ex /assertTruetrue; assertTrue true; 截图:1 、测试 testAdd1 时,由于 b=new Computer101,5;assertEquals106.0, b.add;输入值范畴超出定义范畴,测试反常 ; 2 、测试testMinus时,assertEquals-89,a.minus;预期值和实际值不相同,测试反常;3 、测试 t

14、estMultiply时,断言不为空,抛出反常名师归纳总结 - - - - - - -第 13 页,共 16 页精选学习资料 - - - - - - - - - Junit 集成测试:在Junit 中, Test Case 总是对全部方法进行测试,而 Test Suite 中可对其中的一部分方法测试,而且一个测试类中仍可以包含其他测试类;在 Test Case 类中声明一个 public static Test suite 方法即可完成多个测试类的集成;例如,在上例 ComputerTest 类中,添加: public static Test Suit TestSuite suite=new

15、TestSuite; testAdd; ; suite.addTestnew ComputerTest suite.addTestnew ComputerTesttestMultiply1return suite; 假设在另一个 ComputerTest1类中,要测试 ComputerTest中的全部测试方法,就应:publicclass ComputerTest1 extends TestCase public ComputerTest1String name Supername; publicstatic Test Suit TestSuite suite= new TestSuite;

16、SuiteComputerTest.class; return suite; 名师归纳总结 - - - - - - -第 14 页,共 16 页精选学习资料 - - - - - - - - - 四、测试用例设计体会:在这次软件测试过程中,我扮演了用户、程序员、测试员三钟角色,为了充分表达黑盒、白盒以及 Junit动态测试的特点, 我特意设计了一个 0,100之间的整数简洁加减乘除运算;对于黑盒测试,在设计测试用例时完全没有考虑程序内部的规律结构和内部特性,只纯粹的依据功能和要求来设计测试用例进行测试;测试时使用了多种测试方法,包括边界值测试边界值分析、健壮性测试、特别值测试,等价类测试弱一般、

17、强一般、弱健壮、强健壮等价类测试,基于决策表的测试等;虽然黑盒测试很简洁生成测试用例,但实际上只有一小部分可能的输入被测试到,某些代码得不到测试, 不能直接对隐藏了很多问题的特定程序段进行测试,不易进行充分性测试;比方:在上例中,假设输入的数据是 2,0 ,就输出的是 0.0 ,很明显这个结果是不正确的;对于白盒测试, 在设计测试用例时第一对程序进行分析,从程序的内部结构动身设计测试用例, 涉及到程序的掌握方法、 源语句、编码细节、数据库设计等;设计测试用例时应用了白盒测试中的多种测试方法,其中包括: 测试掩盖 语句掩盖、分支掩盖、分支条件掩盖等 、基路径测试等方法;白盒测试中,对代码 的测试

18、比较透彻,但不简洁生成测试用例,而且测试工作量很大,;由于白盒测 试是基于代码的基础上, 所以对变量的定义、 数据的分析、 精度的度量都有严格名师归纳总结 的要求;如:上例中要求输入的值是 0,100之间的 int型,而输出的结果却要第 15 页,共 16 页求的是 double型;代码中的一个测试类对于 Junit,编写了另一段代码来测试要执行的代码,- - - - - - -精选学习资料 - - - - - - - - - TestCase包含了很多测试方法 testXXXX,每个测试方法中又有很多测试断言 assertXXXX,在方法中测试预期值是否和实际值一样;总之,在这次测试设计让我对软件测试有了一个深化明白,对于测试方法、测试过程,都有了较好的熟悉,学会了如何进行黑盒测试、白盒测试、以及一些名师归纳总结 测试工具如 Junit;当然,对于以后企业上的软件测试, 仍有待很大的提高;第 16 页,共 16 页- - - - - - -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁