我是靠谱客的博主 欣喜保温杯,这篇文章主要介绍JUnit自动化单元测试(二):简单测试实例讲解,现在分享给大家,希望可以做个参考。

自上一篇博客起,我们现在有了测试类TestCalcuate,默认是这样的

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
package junit.demo; import static org.junit.Assert.*; import org.junit.Test; public class TestCalcuate { @Test public void testAdd() { fail("Not yet implemented"); } @Test public void testSub() { fail("Not yet implemented"); .....

首先注解@Test表示这个方法是需要JUnit测试的方法fail()函数的意思是测试失败,这就是为什么初始的测试类进行测试每个都会失败,因为方法里面的内容需要由我们自己写

现在我们简单写一个testAdd

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
package junit.demo; import static org.junit.Assert.*; import org.junit.Test; public class TestCalcuate { @Test public void testAdd() { Calcuate calcuate = new Calcuate(); //新建对象实例 int result = calcuate.add(2, 3); //进行add操作 assertEquals(5, result); //通过断言assertEquals看上面得到的结果是不是期望的结果 } @Test public void testSub() { fail("Not yet implemented"); .....

很好理解,要测试add方法,先创建对象,然后进行add操作,最后通过assertEquals断言看看得到的结果是不是我们期望的结果,此时再运行JUnit Test会发现testAdd成功,表示这个方法测试成功,和我们期望的一样。

接下来我们写testSub,聪明的人会发现,每个测试方法都要创建对象,一点都不人性,于是,就有了@Before和@After注解,@Before表示每次测试都会先执行一次,一般用于初始化。@After表示每次测试后都会执行一次,一般用于断开IO连接等

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package junit.demo; import static org.junit.Assert.*; import org.junit.Test; import org.junit.Before; public class TestCalcuate { Calcuate calcuate; //全局变量 @Before //每次测试都会执行一次,一般用于初始化,一般取名为setUp public void setUp() { calcuate=new Calcuate(); } @Test public void testAdd() { int result = calcuate.add(2, 3); //进行add操作 assertEquals(5, result); //通过断言assertEquals看上面得到的结果是不是期望的结果 } @Test public void testSub() { assertEquals(3, calcuate.sub(5, 2)); } .....

现在testAdd、testSub都已完成了测试,聪明的人又会发现,引用包的时候import static org.junit.Assert.*;是什么?意思是静态导入Assert,我们用到的fail和assertEquals都是Assert的静态方法,静态导入Assert之后,就不需要我们每次开头都写”Assert.”。
还有一些其他的标注和方法下一篇会详细讲解。

最后

以上就是欣喜保温杯最近收集整理的关于JUnit自动化单元测试(二):简单测试实例讲解的全部内容,更多相关JUnit自动化单元测试(二)内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(102)

评论列表共有 0 条评论

立即
投稿
返回
顶部