第3次作业+105032014161 素颜马尾好姑娘i 2021-09-29 11:58 193阅读 0赞 1.测试对象:http://www.cnblogs.com/ELPSY/p/6622579.html 2.修正流程图: ![1122492-20170330194738008-1253077247.png][] 3.测试用例设计: **语句覆盖:** <table> <tbody> <tr> <td> <p><strong>用例编号</strong></p> </td> <td> <p><strong>输入</strong></p> </td> <td> <p><strong>期待结果</strong></p> </td> <td> <p><strong>实际结果</strong></p> </td> <td> <p><strong>结论</strong></p> </td> </tr> <tr> <td> <p>001</p> </td> <td> <p>-1 2 3</p> </td> <td> <p>输入格式错误</p> </td> <td> <p>输入格式错误</p> </td> <td> <p>通过</p> </td> </tr> <tr> <td> <p>002</p> </td> <td> <p>101 60 80</p> </td> <td> <p>边的值不在范围内</p> </td> <td> <p>边的值不在范围内</p> </td> <td> <p>通过</p> </td> </tr> <tr> <td> <p>003</p> </td> <td> <p>1 2 3</p> </td> <td> <p>不构成三角形</p> </td> <td> <p>不构成三角形</p> </td> <td> <p>通过</p> </td> </tr> <tr> <td> <p>004</p> </td> <td> <p>100 100 100</p> </td> <td> <p>等边三角形</p> </td> <td> <p>等边三角形</p> </td> <td> <p>通过</p> </td> </tr> <tr> <td> <p>005</p> </td> <td> <p>100 1 100</p> </td> <td> <p>等腰三角形</p> </td> <td> <p>等腰三角形</p> </td> <td> <p>通过</p> </td> </tr> <tr> <td> <p>006</p> </td> <td> <p>30 40 50</p> </td> <td> <p>直角三角形</p> </td> <td> <p>直角三角形</p> </td> <td> <p>通过</p> </td> </tr> <tr> <td> <p>007</p> </td> <td> <p>100 99 2</p> </td> <td> <p>一般三角形</p> </td> <td> <p>一般三角形</p> </td> <td> <p>通过</p> </td> </tr> </tbody> </table> **判定覆盖:** <table> <tbody> <tr> <td> <p><strong>用例编号</strong></p> </td> <td> <p><strong>输入</strong></p> </td> <td> <p><strong>期待结果</strong></p> </td> <td> <p><strong>实际结果</strong></p> </td> <td> <p><strong>结论</strong></p> </td> </tr> <tr> <td> <p>001</p> </td> <td> <p>-1 2 3</p> </td> <td> <p>输入格式错误</p> </td> <td> <p>输入格式错误</p> </td> <td> <p>通过</p> </td> </tr> <tr> <td> <p>002</p> </td> <td> <p>101 60 80</p> </td> <td> <p>边的值不在范围内</p> </td> <td> <p>边的值不在范围内</p> </td> <td> <p>通过</p> </td> </tr> <tr> <td> <p>003</p> </td> <td> <p>1 2 3</p> </td> <td> <p>不构成三角形</p> </td> <td> <p>不构成三角形</p> </td> <td> <p>通过</p> </td> </tr> <tr> <td> <p>004</p> </td> <td> <p>100 100 100</p> </td> <td> <p>等边三角形</p> </td> <td> <p>等边三角形</p> </td> <td> <p>通过</p> </td> </tr> <tr> <td> <p>005</p> </td> <td> <p>100 1 100</p> </td> <td> <p>等腰三角形</p> </td> <td> <p>等腰三角形</p> </td> <td> <p>通过</p> </td> </tr> <tr> <td> <p>006</p> </td> <td> <p>30 40 50</p> </td> <td> <p>直角三角形</p> </td> <td> <p>直角三角形</p> </td> <td> <p>通过</p> </td> </tr> <tr> <td> <p>007</p> </td> <td> <p>100 99 2</p> </td> <td> <p>一般三角形</p> </td> <td> <p>一般三角形</p> </td> <td> <p>通过</p> </td> </tr> </tbody> </table> **条件覆盖:** <table> <tbody> <tr> <td> <p><strong>用例编号</strong></p> </td> <td> <p><strong>输入</strong></p> </td> <td> <p><strong>期待结果</strong></p> </td> <td> <p><strong>实际结果</strong></p> </td> <td> <p><strong>结论</strong></p> </td> </tr> <tr> <td> <p>001</p> </td> <td> <p>1 1 2</p> </td> <td> <p>不构成三角形</p> </td> <td> <p>不构成三角形</p> </td> <td> <p>通过</p> </td> </tr> <tr> <td> <p>002</p> </td> <td> <p>101 101 101</p> </td> <td> <p>边的值不在范围内</p> </td> <td> <p>边的值不在范围内</p> </td> <td> <p>通过</p> </td> </tr> <tr> <td> <p>003</p> </td> <td> <p>2 2 3</p> </td> <td> <p>等腰三角形</p> </td> <td> <p>等腰三角形</p> </td> <td> <p>通过</p> </td> </tr> <tr> <td> <p>004</p> </td> <td> <p>3 3 3</p> </td> <td> <p>等边三角形</p> </td> <td> <p>等边三角形</p> </td> <td> <p>通过</p> </td> </tr> <tr> <td> <p>005</p> </td> <td> <p>3 4 5</p> </td> <td> <p>直角三角形</p> </td> <td> <p>直角三角形</p> </td> <td> <p>通过</p> </td> </tr> <tr> <td> <p>006</p> </td> <td> <p>5 6 7</p> </td> <td> <p>一般三角形</p> </td> <td> <p>一般三角形</p> </td> <td> <p>通过</p> </td> </tr> </tbody> </table> **条件判定组合覆盖:** <table> <tbody> <tr> <td> <p><strong>用例编号</strong></p> </td> <td> <p><strong>输入</strong></p> </td> <td> <p><strong>期待结果</strong></p> </td> <td> <p><strong>实际结果</strong></p> </td> <td> <p><strong>结论</strong></p> </td> </tr> <tr> <td> <p>001</p> </td> <td> <p>3 4 5</p> </td> <td> <p>直角三角形</p> </td> <td> <p>直角三角形</p> </td> <td> <p>通过</p> </td> </tr> <tr> <td> <p>002</p> </td> <td> <p>6 6 6</p> </td> <td> <p>等边三角形</p> </td> <td> <p>等边三角形</p> </td> <td> <p>通过</p> </td> </tr> <tr> <td> <p>003</p> </td> <td> <p>7 8 9</p> </td> <td> <p>一般三角形</p> </td> <td> <p>一般三角形</p> </td> <td> <p>通过</p> </td> </tr> <tr> <td> <p>004</p> </td> <td> <p>1 1 3</p> </td> <td> <p>不构成三角形</p> </td> <td> <p>不构成三角形</p> </td> <td> <p>通过</p> </td> </tr> <tr> <td> <p>005</p> </td> <td> <p>101 101 101</p> </td> <td> <p>边的值不在范围内</p> </td> <td> <p>边的值不在范围内</p> </td> <td> <p>通过</p> </td> </tr> </tbody> </table> 4.单元测试框架: 1 import static org.junit.Assert.*; 2 import org.junit.Before; 3 import org.junit.Test; 4 5 public class JudgeTriangleTest { 6 7 @Before 8 public void setUp() throws Exception { 9 10 } 11 12 @Test 13 public void testJudge() { 14 String[] str1={"2","3","4"}; 15 String[] str2={"1","2","3","4"}; 16 String[] str3={"1","2","%"}; 17 assertTrue("true",JudgeTriangle.Judge(str1)); 18 assertFalse("false",JudgeTriangle.Judge(str2)); 19 assertFalse("false",JudgeTriangle.Judge(str3)); 20 //fail("Not yet implemented"); 21 } 22 23 @Test 24 public void testTriangle() { 25 assertEquals(JudgeTriangle.triangle(1, 1, 1),"等边三角形"); 26 assertEquals(JudgeTriangle.triangle(100, 100, 100),"等边三角形"); 27 assertEquals(JudgeTriangle.triangle(101, 101,101),"边的值不在范围内"); 28 assertEquals(JudgeTriangle.triangle(0, 0,0),"边的值不在范围内"); 29 30 assertEquals(JudgeTriangle.triangle(3, 3, 5),"等腰三角形"); 31 assertEquals(JudgeTriangle.triangle(1, 1, 2),"不构成三角形"); 32 assertEquals(JudgeTriangle.triangle(100, 100, 99),"等腰三角形"); 33 assertEquals(JudgeTriangle.triangle(0,0,1),"边的值不在范围内"); 34 35 assertEquals(JudgeTriangle.triangle(3, 4, 5),"直角三角形"); 36 assertEquals(JudgeTriangle.triangle(2, 4, 5),"一般三角形"); 37 assertEquals(JudgeTriangle.triangle(70, 11, 20),"不构成三角形"); 38 assertEquals(JudgeTriangle.triangle(100, 101,99),"边的值不在范围内"); 39 //fail("Not yet implemented"); 40 } 41 } 5.测试结果:测试通过。 ![1122492-20170330195037102-2123537923.png][] 6.测试小结: * 通过本次测试,我了解到了很多关于覆盖测试方面的知识,这方面的知识对我来说很容易弄混,主要还是要靠自己去理解。在做语句覆盖的时候,我一直认为语句覆盖要一次测试中将所有的语句覆盖,一直以为它没有语句覆盖。后来仔细研究案例理解了可以进行多次测试使被测试的程序的每一条可执行语句至少执行一次。 在做测试的过程中发现有很多覆盖会重复,当判断条件很多时,各种覆盖就很容易混淆。 * 采用单元测试框架感觉比main()方法更加简单快速,根据每个不同大的方法编写各自的测试方法,再用Junit运行。而且每个方法之间是独立的,更加灵活,再者测试方法一般不会直接写在原类中,而是单独的测试类,这样测试代码就完全与逻辑代码分开了。 * 测试是为了发现错误,而调试是为了找出错误的原因和错误发生的地方不是软件测试的任务。我觉得测试是不断地对程序进行挑错,但是调试是对程序进行排错,测试只需要找出错误,至于调试就是根据测试到的错误去对程序进行修改,不断地检查出错误的原因和位置然后进行修正。 转载于:https://www.cnblogs.com/LixiaZhang/p/6648178.html [1122492-20170330194738008-1253077247.png]: /images/20210725/43fc917ed35440628ee52991cd0e692b.png [1122492-20170330195037102-2123537923.png]: /images/20210725/b70c212c31bb45259233e4d3702a114f.png
相关 第三次作业 1 ![1be13f378851425da7b31a1ef9c510b6.png][] 2 ![325fb379149c4bb99848a41b906e6ef8.png] 朱雀/ 2024年04月01日 13:25/ 0 赞/ 99 阅读
相关 第三次作业 结对编程作业 <table> <tbody> <tr> <td>本次作业地址</td> <td><a href="https://edu.cnb 忘是亡心i/ 2022年01月11日 06:19/ 0 赞/ 348 阅读
相关 第三次作业 ![1619643-20190328205955743-1413114076.png][] ![1619643-20190328205954074-480729028. Myth丶恋晨/ 2021年12月22日 08:21/ 0 赞/ 332 阅读
相关 第四次作业 Part 1 include<stdio.h> const int N=5; int main(){ int a[N]={ 小咪咪/ 2021年12月17日 06:25/ 0 赞/ 382 阅读
相关 第五次作业 ![808775-20151022213428770-31310801.png][] 一.系统需求N(Need) 总:设计一个在线系统,用于记录教师授课的情况。 分: 淩亂°似流年/ 2021年12月15日 08:27/ 0 赞/ 340 阅读
相关 第三次作业 一.git 简介? 1.什么是git? git是一款开源的分布式版本控制工具 在世界上所有的分布式版本控制工具中,git是最快、最简单、最流行的 2.git的起源? 爱被打了一巴掌/ 2021年12月13日 19:57/ 0 赞/ 336 阅读
相关 第六次作业 1. 概述 Selenium 测试直接在浏览器中运行,就像真实用户所做的一样。Selenium 测试可以在 Windows、Linux 和 Macint Myth丶恋晨/ 2021年11月26日 10:36/ 0 赞/ 373 阅读
相关 第四次作业 (1) 所属课程: https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass2 作业要求: 墨蓝/ 2021年10月24日 04:18/ 0 赞/ 427 阅读
相关 第七次作业 Task(1):基于我们列出的 7 条UX评价准则,分析『 智慧校园移动APP “ 今日校园”』 在用户体验设计方面让你觉得满意的地方(不少于2点),请陈述理由。 Task( 爱被打了一巴掌/ 2021年09月30日 01:12/ 0 赞/ 391 阅读
相关 第3次作业+105032014161 1.测试对象:http://www.cnblogs.com/ELPSY/p/6622579.html 2.修正流程图: ![1122492-2017033019473800 素颜马尾好姑娘i/ 2021年09月29日 11:58/ 0 赞/ 194 阅读
还没有评论,来说两句吧...