Junit 学习笔记

简介: Junit 学习笔记

Junit


一、Junit概述


  • 测试的分类:


  • 黑盒测试:封装代码,只显示输入和输出。通过比较实际的输出和预想的输出从而得到软件或者程序是否正确


  • 白盒测试:不封装代码,看过程和流程,思考代码是否高效,一般写代码。Junit测试属于白盒测试的一种。


二、 Junit的使用步骤


  • 定义一个测试类(测试用例)


  • 测试类名: 类名Test
  • 包名:xxx.xxx.xx.test 将测试类单独放在一个包之下


  • 定义一个测试方法(可以独立运行)


  • 方法名:test方法名
  • 返回值:void
  • 参数列表:空参


  • 给方法加上注解@Test


  • 【注意】:使用Junit单元测试的时候,看的是颜色


  • 红色代表出错
  • 绿色代表正常
  • 一般我们使用断言来进行结果的处理


  • Assert.assertEquals(期待值, 真实值);
package com.zhang.test;
 import com.zhang.junit.Calculator;
 import org.junit.Assert;
 import org.junit.Test;
 public class CalculatorTest {
     // 测试add方法
     @Test
     public void testAdd(){
         // 创建对象
         Calculator calculator = new Calculator();
         // 测试方法
         int result = calculator.add(1 , 2);
         // System.out.println(result);
          /**因为输出不能0检测出代码的错误(想要的因为代码逻辑无法实现)
            * 所以我们用断言Assert和真实的结果进行比对*/
          Assert.assertEquals(3 , result);   // 断言成功
 //         Assert.assertEquals(4,result);     // 断言失败
     }
     // 测试sub方法
     @Test
     public void testSub(){
         Calculator calculator = new Calculator();
         int result = calculator.sub(2 , 1);
         System.out.println(result);
     }
 }


三、Junit的其他注解


  • @Before


  • 在所有测试方法被执行之前执行,一般用来申请资源
  • 所有的测试方法都会执行


  • @After


  • 在所有测试方法被执行之后执行,一般用来释放资源
  • 所有的测试方法都会执行
  • 即使出现了异常,也不会影响该方法的执行
package com.zhang.test;
 import com.zhang.junit.Calculator;
 import org.junit.After;
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
 public class CalculatorTest {
     // 在测试方法被执行之前自动执行,一般用来申请资源
     @Before
     public void init(){
         System.out.println("init...");
     }
     // 在所有测试方法被执行完成之后都会执行该方法,一般用来释放资源
     // 即使出现了异常,也会执行该方法
     @After
     public void close(){
         System.out.println("close");
     }
     // 测试add方法
     @Test
     public void testAdd(){
         // 创建对象
         Calculator calculator = new Calculator();
         // 测试方法
         int result = calculator.add(1 , 2);
         // System.out.println(result);
          /**因为输出不能0检测出代码的错误(想要的因为代码逻辑无法实现)
            * 所以我们用断言Assert和真实的结果进行比对*/
          Assert.assertEquals(3 , result);   // 断言成功
 //         Assert.assertEquals(4,result);     // 断言失败
     }
     // 测试sub方法
     @Test
     public void testSub(){
         Calculator calculator = new Calculator();
         int result = calculator.sub(2 , 1);
         System.out.println(result);
     }
 }


相关文章
|
消息中间件 Java 测试技术
SpringBoot 集成 JUNIT 测试下单基本流程|学习笔记
快速学习 SpringBoot 集成 JUNIT 测试下单基本流程
202 0
SpringBoot 集成 JUNIT 测试下单基本流程|学习笔记
|
设计模式 数据库连接 测试技术
业务测试(使用 Junit 测试) | 学习笔记
简介:快速学习业务测试(使用 Junit 测试)
195 0
业务测试(使用 Junit 测试) | 学习笔记
|
测试技术
【学习笔记】【Idea】【JUnit】用例测试
程序测试中常见的有:白盒测试、黑盒测试、用例测试等。 这里主要讲用例测试:JUnit
193 0
【学习笔记】【Idea】【JUnit】用例测试
|
Java jenkins 测试技术
Jenkins ANT+JUNIT实例(学习笔记二十七)
转载:http://www.cnblogs.com/helloIT/p/5761740.html 1.环境   windows10 专业版   Jenkins 2.7   apache-ant-1.9.6   JDK1.8.0_20 2.整体思路   jdk:支持ant脚本中的编译、测试等target。
1299 0
|
测试技术
|
4月前
|
XML Java 测试技术
Spring5入门到实战------17、Spring5新功能 --Nullable注解和函数式注册对象。整合JUnit5单元测试框架
这篇文章介绍了Spring5框架的三个新特性:支持@Nullable注解以明确方法返回、参数和属性值可以为空;引入函数式风格的GenericApplicationContext进行对象注册和管理;以及如何整合JUnit5进行单元测试,同时讨论了JUnit4与JUnit5的整合方法,并提出了关于配置文件加载的疑问。
Spring5入门到实战------17、Spring5新功能 --Nullable注解和函数式注册对象。整合JUnit5单元测试框架
|
2月前
|
Java 程序员 测试技术
Java|让 JUnit4 测试类自动注入 logger 和被测 Service
本文介绍如何通过自定义 IDEA 的 JUnit4 Test Class 模板,实现生成测试类时自动注入 logger 和被测 Service。
35 5
|
3月前
|
SQL JavaScript 前端开发
基于Java访问Hive的JUnit5测试代码实现
根据《用Java、Python来开发Hive应用》一文,建立了使用Java、来开发Hive应用的方法,产生的代码如下
82 6
|
4月前
|
测试技术
单元测试问题之使用TestMe时利用JUnit 5的参数化测试特性如何解决
单元测试问题之使用TestMe时利用JUnit 5的参数化测试特性如何解决
62 2
|
4月前
|
测试技术
如何使用 JUnit 测试方法是否存在异常
【8月更文挑战第22天】
88 0