Java单元测试工具:JUnit4(二)——JUnit使用详解
来源:互联网 发布:软件用户说明书 编辑:程序博客网 时间:2024/06/16 17:08
(二)JUnit使用注意点及测试失败的两种情况
看了慕课网的JUnit视频教程:http://www.imooc.com/learn/356,总结笔记。
这篇笔记记录JUnit使用的一些注意点,或者说约定俗成的地方;以及介绍了导致测试失败的两种情况。
1.JUnit使用的最佳实践
①测试方法上必须使用@Test进行修饰
②测试方法必须使用public void 进行修饰,不能带任何的参数
③新建一个源代码目录来存放我们的测试代码,即将测试代码和项目业务代码分开
④测试类所在的包名应该和被测试类所在的包名保持一致
⑤测试单元中的每个方法必须可以独立测试,测试方法间不能有任何的依赖
⑥测试类使用Test作为类名的后缀(不是必须)
⑦测试方法使用test作为方法名的前缀(不是必须)
②测试方法必须使用public void 进行修饰,不能带任何的参数
③新建一个源代码目录来存放我们的测试代码,即将测试代码和项目业务代码分开
④测试类所在的包名应该和被测试类所在的包名保持一致
⑤测试单元中的每个方法必须可以独立测试,测试方法间不能有任何的依赖
⑥测试类使用Test作为类名的后缀(不是必须)
⑦测试方法使用test作为方法名的前缀(不是必须)
1.1 测试代码和项目代码分开
结构应如下:包名要一致;最好以Test作为测试类后缀;最好以test作为测试方法前缀。
1.2 独立测试类的方法
项目结构图中,展开测试类的所以方法,右键其中一个方法,Run As,JUnit Test:
2.测试失败的两种情况
注意:测试用例是用来达到测试想要的预期结果,而不能测试出程序的逻辑错误。
比如:你需要写一个计算长方形面积的方法,而你错误地认为周长的公式就是计算面积的。所以在测试方法中,就算结果达到了你的预期,但这显然不是正确的计算面积方法。
2.1 新建测试类
如下:
- package jtzen9.util;
- import org.junit.Assert;
- import org.junit.Test;
- public class ErrorAndFailureTest {
- @Test
- public void testAdd() {
- int result = new Calculate().add(3,3);
- Assert.assertEquals("加法有问题", 5, result); //预期值与程序输出不一样
- }
- @Test
- public void testDivide() {
- int result = new Calculate().divide(6,0); //除法中,除数为0
- Assert.assertEquals("除法有问题", 3, result);
- }
- }
2.2 运行结果
①testAdd()方法是failure错误
②testDivide()方法是error错误
2.3 说明
①Failure一般由单元测试使用的断言方法判断失败所引起的,这经表示测试点发现了问题,就是说程序输出的结果和我们预期的不一样。
②Error是由代码异常引起的,它可以产生于测试代码本身的错误,也可以是被测试代码中的一个隐藏的bug。
②Error是由代码异常引起的,它可以产生于测试代码本身的错误,也可以是被测试代码中的一个隐藏的bug。
阅读全文
0 0
- Java单元测试工具:JUnit4(二)——JUnit使用详解
- Java单元测试工具:JUnit4(二)——JUnit使用详解
- Java单元测试工具:JUnit4(二)——JUnit使用详解
- Java单元测试工具:JUnit4(三)——JUnit详解之运行流程及常用注解
- Java单元测试工具:JUnit4(三)——JUnit详解之运行流程及常用注解
- Java单元测试工具:JUnit4(三)——JUnit详解之运行流程及常用注解
- Java单元测试工具:JUnit4(四)——JUnit测试套件使用及参数化设置
- Java单元测试工具:JUnit4(四)——JUnit测试套件使用及参数化设置
- Java单元测试工具:JUnit4(四)——JUnit测试套件使用及参数化设置
- Java单元测试工具:JUnit4——JUnit详解之运行流程及常用注解
- Java单元测试工具:JUnit4——JUnit测试套件使用及参数化设置
- Java单元测试工具——JUnit4使用
- 软件单元测试工具junit junit4使用帮助
- java单元测试工具:JUnit4(二)——测试失败、运行流程及常用注解
- 在eclipse开发工具中使用JUnit4进行单元测试详解(二)提高篇
- java单元测试工具:JUnit4(三)——测试套件的使用和参数化设置
- Java单元测试Junit(二)使用DBUnit扩展JUnit
- JUnit单元测试使用java详解
- Building a RESTful Web Service
- linux 块设备驱动(1)
- ch2 gpio应用:Buzzer封装
- sklearn总结
- Spring容器中Bean的生命周期(init-method destroy-method)
- Java单元测试工具:JUnit4(二)——JUnit使用详解
- [RK3288][Android6.0] Audio中的混音过程小结
- Linux_Kafka 安装笔记
- vue js 的生命周期和钩子函数
- 集合总结笔记——ArrayList/LinkedList
- SOA开发-02 两个4层架构规范
- Android 方法数超出 65536限制的解决方法
- react-router 从 v2/v3 to v4 迁移
- Tensorflow padding 大小转换公式