Java 之 Junit 单元测试
Junit 单元测试
测试分类:
1、黑盒测试:不需要写代码,给输入值,看程序是否能够输出期望的值。
2、白盒测试:需要写代码。关注程序具体的执行流程。
Junit 测试:(属于白盒测试)
步骤:
1、定义一个测试类(测试用例)
建议:
① 测试类名:被测试的类名 Test 如 CalculatorTest
② 包名:xxx.xxx.xxx.test 如 com.baidu.java.test
2、定义测试方法:可以独立运行
建议:
① 方法名: test测试的方法名
② 返回值: void 不需返回值
③ 参数列表: 空参,自己执行,无需调用
④ 单元测试的方法都必须是 public
3、给方法加 @Test 注解。
4、导入 Junit 依赖环境。
判定结果:
绿色:表示成功
红色:表示失败
一般使用断言操作来处理结果,即判定期望的值与实际的值进行比较。
Assert.assertEquals(期望的结果,运算的结果);
补充:
@ Before :修饰的方法会在测试方法之前被自动执行,是初始化方法,一般用于资源申请
@ After:修饰的方法会在测试方法之后自动被执行,一般用于释放资源。
@BeforeClass:会在类初始化阶段完成
@AfterClass:会在类卸载阶段完成
@BeforeClass和@AfterClass而且要求方法是静态的,每个类只执行一次。
Demo:
public class CalcuatorTest { /**
* 初始化方法
* 用于资源申请,所有方法在执行之前都会先执行该方法
*/
@Before
public void init() {
System.out.println("start....");
} /**
* 释放资源方法
* 在所有测试方法执行完后,都会自动执行该方法
*/
@After
public void close() {
System.out.println("end...");
} @Test
public void testAdd() {
// 创建对象
Calculator cal = new Calculator();
// 调用方法
int res = cal.add(3, 4);
//System.out.println(res);
// 使用断言来进行判断
Assert.assertEquals(7,res); // 显示绿色,表示程序成功运行
} @Test
public void testAdd2() {
int res = 3/0; // 显示红色,表示程序存在异常
System.out.println("执行了"); }
}
Java 之 Junit 单元测试的更多相关文章
- Java 工具 JUnit单元测试
Java 工具 JUnit单元测试 @author ixenos 1.1. JUnit单元测试框架的基本使用 一.搭建环境: 导入junit.jar包(junit4) 二.写测试类: 0,一般一个 ...
- 【Java】Junit单元测试
什么是单元测试? 单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证. 对于单元测试中单元的含义,一般来说,要根据实际情况去判定其具体含义,如C语言中单元指一个函数,Ja ...
- java的Junit单元测试
函数主要分为以下几类: 1.有固定返回值的.用assert 方法即可. 2.修改了状态. (1)修改了数据库中的数据.可以查询数据库(select 语句),看数据是否发生了改变. --原则上应该是用 ...
- 解决Junit单元测试 找不到类 ----指定Java Build Path
做junit 单元测试时,发现怎么执行都是以前编译过得代码. 最后找到原因了, src/test/java 编译完的.class路径是 Default output folder Default ou ...
- Spring完全基于Java配置和集成Junit单元测试
要点: 配置继承WebApplicationInitializer的类作为启动类,相当于配置web.xml文件 使用@Configuration注解一个类,在类中的方式使用@Bean注解,则表名该方法 ...
- JUnit单元测试教程(翻译自Java Code Geeks)
JUnit单元测试教程--终极指南 JUnit单元测试教程终极指南 说明 单元测试简介 1 什么是单元测试 2 测试覆盖 3 Java中的单元测试 JUnit简介 1 使用Eclipse实现简单JUn ...
- Java反射学习总结终(使用反射和注解模拟JUnit单元测试框架)
转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! 本文是Java反射学习总结系列的最后一篇了,这里贴出之前文章的链接,有兴趣的可以打开看看. ...
- 【Java】eclipse中的JUnit单元测试
eclipse中的JUnit单元测试 步骤: 选中当前工程 - 右键选择:build path - add libraries - JUnit 4 - 下一步 创建Java类,进行单元测试. 此时的J ...
- day1 java基础回顾-Junit单元测试
Junit单元测试框架的基本使用 一.搭建环境: 导入junit.jar包(junit4) 二.写测试类: 0,一般一个类对应一个测试类. 1,测试类与被测试类最好是放到同一个包中(可以是不同的源文件 ...
随机推荐
- synchronized 同步对象概念
解决上述问题之前,先理解synchronized关键字的意义如下代码: Object someObject =new Object(); synchronized (someObject){ // ...
- Qt编写气体安全管理系统1-项目框架
一.前言 说到项目框架,也叫代码框架,其实是非常重要的,随着编程经验的增加,相信每个程序员都会有一个自己的习惯的项目框架,这个东西跟建房子一样,先把架子搭好,然后挨个往里边填充内容,据说牛逼的架构师都 ...
- 【源码解析】Flink 是如何处理迟到数据
相信会看到这篇文章的都对Flink的时间类型(事件时间.处理时间.摄入时间)和Watermark有些了解,当然不了解可以先看下官网的介绍:https://ci.apache.org/projects/ ...
- 使用jsPlumb插件实现动态连线功能
这周去看了两天的羽毛球亚锦赛,工作有提前晚上加班做一些,但是技术文章却拉下了. 这段时间一直在寻找可以实现前端元素动态连线的功能,找了好几个库,考虑过用d3或者原生svg和canvas来实现,最后和同 ...
- Keras代码超详细讲解LSTM实现细节
1.首先我们了解一下keras中的Embedding层:from keras.layers.embeddings import Embedding: Embedding参数如下: 输入尺寸:(batc ...
- k8s SLUB: Unable to allocate memory on node -1 错误
Try to Fix Two Linux Kernel Bugs While Testing TiDB Operator in K8sWed, May 1, 2019 Wenbo Zhang Auth ...
- npm i node-sass 报错&npm 镜像切换
npm install --save node-sass --registry=https://registry.npm.taobao.org --disturl=https://npm.taobao ...
- 理解Hybrid接口的应用
Hybrid接口既可以连接普通终端的接入链路又可以连接交换机间的干道链路,特允许多个vlan的帧通过,并可以在出接口方向将某些vlan帧的标签剥掉. 通过配置Hybrid接口,能过实现对VLAN标签的 ...
- PDO 查询mysql返回字段int变为String型解决方法
PDO 查询mysql返回字段int变为String型解决方法使用PDO查询mysql数据库时,执行prepare,execute后,返回的字段数据全都变为字符型. 例如id在数据库中是Int的,查询 ...
- mysql 事物控制语言
事务控制语言(DTL) 什么是事务 通常,在此之前,我们说,一条语句使用一个分号(;)来结束,并得到执行. 那么我们说,这个“一次性执行”的过程,可以称为“一个事务” ...