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 单元测试的更多相关文章

  1. Java 工具 JUnit单元测试

    Java 工具 JUnit单元测试 @author ixenos 1.1.   JUnit单元测试框架的基本使用 一.搭建环境: 导入junit.jar包(junit4) 二.写测试类: 0,一般一个 ...

  2. 【Java】Junit单元测试

    什么是单元测试? 单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证. 对于单元测试中单元的含义,一般来说,要根据实际情况去判定其具体含义,如C语言中单元指一个函数,Ja ...

  3. java的Junit单元测试

    函数主要分为以下几类: 1.有固定返回值的.用assert 方法即可. 2.修改了状态. (1)修改了数据库中的数据.可以查询数据库(select  语句),看数据是否发生了改变. --原则上应该是用 ...

  4. 解决Junit单元测试 找不到类 ----指定Java Build Path

    做junit 单元测试时,发现怎么执行都是以前编译过得代码. 最后找到原因了, src/test/java 编译完的.class路径是 Default output folder Default ou ...

  5. Spring完全基于Java配置和集成Junit单元测试

    要点: 配置继承WebApplicationInitializer的类作为启动类,相当于配置web.xml文件 使用@Configuration注解一个类,在类中的方式使用@Bean注解,则表名该方法 ...

  6. JUnit单元测试教程(翻译自Java Code Geeks)

    JUnit单元测试教程--终极指南 JUnit单元测试教程终极指南 说明 单元测试简介 1 什么是单元测试 2 测试覆盖 3 Java中的单元测试 JUnit简介 1 使用Eclipse实现简单JUn ...

  7. Java反射学习总结终(使用反射和注解模拟JUnit单元测试框架)

    转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! 本文是Java反射学习总结系列的最后一篇了,这里贴出之前文章的链接,有兴趣的可以打开看看. ...

  8. 【Java】eclipse中的JUnit单元测试

    eclipse中的JUnit单元测试 步骤: 选中当前工程 - 右键选择:build path - add libraries - JUnit 4 - 下一步 创建Java类,进行单元测试. 此时的J ...

  9. day1 java基础回顾-Junit单元测试

    Junit单元测试框架的基本使用 一.搭建环境: 导入junit.jar包(junit4) 二.写测试类: 0,一般一个类对应一个测试类. 1,测试类与被测试类最好是放到同一个包中(可以是不同的源文件 ...

随机推荐

  1. ISO/IEC 9899:2011 条款6.5.6——加法操作符

    6.5.6 加法操作符 语法 1.additive-expression: multiplication-expression additive-expression    +    multipli ...

  2. 【转】asp获取【微信公众平台】Access Token的源代码下载

    在做微信开发时候,经常要用到Access Token,但是官网提供的都是基于php写的,我用asp写了,有需要可以直接复制去用,模板消息,jdk上传图片,客服消息等全需要这个:'获取 access_t ...

  3. maven项目新检出后不编译爬坑记 及 mvn clean package报错 WagonTransporterFactory: java.util.NoSuchElementException 异常【我】

    从SVN新检出一个maven项目,配置好后,发现项目无法编译(只有一个test包中的代码显示编译报错,其他所有包中的代码都不编译,也不报错), 先注释掉报错的test包中的所有内容, 用Eclipse ...

  4. QDateTime获取当前时间的时间戳

    QdateTime获取当前时间的时间戳作为图片名 QDateTime qdt1 = QDateTime::currentDateTime();QString timeStr = qdt1.toStri ...

  5. netty5心跳与业务消息分发实例

    继续基于我们之前的例子(参见netty5自定义私有协议实例),这次我们加上连接校验和心跳机制: 只要校验通过,客户端发送心跳和业务消息是两个不同的事件发送的,彼此互不干扰.针对以上流程,我们需要增加4 ...

  6. 【设计】IOT设备控制页面设计

    https://www.uishe.cn/10803.html https://huaban.com/pins/1012512760/ https://huaban.com/pins/10878772 ...

  7. systemctl service

    一.systemctl常用命令 systemctl list-units            ##列出当前系统服务的状态 systemctl list-unit-files       ##列出服务 ...

  8. 亲爱的mssql码农们,看看利用sp_addlinkedserver实现远程数据库链接

    亲爱的mssql码农们,可以看看本地连接远程的数据库方式(sp_addlinkedserver)--通过代码连接 --查看当前链接情况: select * from sys.servers; --使用 ...

  9. Java分布式:分布式事务

    Java分布式:分布式事务 分布式事务 分布式事务就是指事务的参与者.支持事务的服务器.资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上.简单的说,就是一次大的操作由不同的小操作组成,这 ...

  10. android基础---->Parcelable的使用

     android中Parcelable序列化的使用,简单的记录一下. 目录导航: Serializable在android中的使用 Parcelable在android中的使用 Serializabl ...