直接学习该链接汇总起来的,可以直接看这个:https://blog.csdn.net/caohongxing/category_11220107.html
一、一个简单的Junit单元测试
实现一下简单的单元测试内容
1.被测代码
importstaticorg.junit.Assert.assertEquals;publicclassCalc{intadd(int a,int b){int c ;
c= a+b;return c;}intsubstract(int a,int b){int c ;
c= a-b;return c;}intmulitple(int a,int b){int c ;
c= a*b+1;return c;}intdivid(int a,int b){int c ;if(b ==0){thrownewArithmeticException("fengmu can not be 0");}
c= a/b;return c;}publicstaticvoidmain(String args[]){Calc c =newCalc();int r = c.add(2,1);if(r==3)System.out.println("add(1, 2) 结果正确");elseSystem.out.println("add(1, 2) 结果错误");
r = c.add(-2,-1);if(r==-3)System.out.println("add(-1, -2) 结果正确");elseSystem.out.println("add(-1, -2) 结果错误");}}
2.Junit单元测试步骤
(1)创建junit测试
(2)测试配置
3)文件运行
此处截图是失败的,因为用例并没有实现
(4)举例加法测试用例编写运行
保存运行后得到(绿色代表通过)
(5)举例除法测试用例编写
3.Junit注解含义
importstaticorg.junit.Assert.*;importorg.junit.After;importorg.junit.AfterClass;importorg.junit.Before;importorg.junit.BeforeClass;importorg.junit.Ignore;importorg.junit.Test;publicclass branchCoverTest {@BeforeClasspublicstaticvoidbeforemyclass(){System.out.println("beforeClass: Before Class");}@AfterClasspublicstaticvoidaftermyclass(){System.out.println("AfterClass: after class");}@Beforepublicvoidbeforemytest(){System.out.println("before: before every test case");}@Afterpublicvoidaftermytest(){System.out.println("After: after every test case");}@TestpublicvoidtestFun3_01(){
branchCover bc =newbranchCover();
bc.fun3(2,0,1);System.out.println("testFun3_01用例执行");}@TestpublicvoidtestFun3_02(){
branchCover bc =newbranchCover();
bc.fun3(2,-1,1);System.out.println("testFun3_02用例执行");}//@@Ignore 注解表示该测试用例暂不执行@Ignore@TestpublicvoidtestFun3_03(){
branchCover bc =newbranchCover();
bc.fun3(0,-1,1);}}
在该代码中可以看到@BeforeClass、@AfterClass、@Before、@After、@Test、@Ignore注解:
@BeforeClass:在所有测试用例开始前执行,方法必须是静态且没有返回值的
@AfterClass:在所有测试用例完成后执行,方法必须是静态且没有返回值的
@Before:在当前用例执行前执行
@After:在当前用例执行后执行
@Ignore:该测试用例暂不执行
由此可见,该运行情况打印如下
详细注解含义如下:
4.断言的方法
二、插件安装
1.覆盖率EclEmma插件安装使用
(1)点击
(2)在弹出窗口上输入搜索条件 “Coverage”后,点击回车键,找到EclEmma Java Code Coverage安装
(3)运行语句覆盖
红色表示未覆盖
黄色表示部分覆盖
绿色表示覆盖
(4)查看覆盖率
得到
2.控制流图插件CFG生成器
(1)点击
(2)输入http://eclipsefcg.sourceforge.net后,回车
(3)等了好久,终于可以了,然后运行
(4)得到
版权归原作者 rollerskating1 所有, 如有侵权,请联系我们删除。