zoukankan      html  css  js  c++  java
  • 单元测试Junit4

    单元测试

    单元测试即所谓的白盒测试,跟main方法差不多,不过更加的方便,更能提交效率

    这里记录的是用idea进行单元测试,eclipse大概就是快捷键不一样了,其他都是一样的

    我们这里用的是junit4进行单元测试

    进行单元测试,一般都建立一个与src同级的test目录,用来放进行单元测试的类,用于跟业务代码的区分

    用junit测试需要导入的jar

    1. junit-4.12.jar
    2. hamcrest-core-1.3.jar

    具体的步骤如下:
    0. 导入jar包

    1. 创建一个与src平级的tests目录

    2. 创建一个类,并实现一个功能函数

    3. 右键- go to - Test,选择 create new Test 或者 ctrl + shift + t ,选择create new Test

    4. 最上面的Testing Library 选择JUnit4,最下面的选择要测试的方法

    5. 在test中生成的类中,调用要测试的方法

    6. 运行测试方法,点击方法旁边的图标,如果运行出现绿色的条则该方法测试通过,有三种运行方法:

      1. run
      2. debug
      3. run wth coverage (会显示方法执行的详细信息)

    同时运行多个测试类,可以使用测试套件:suite,使用的方式是创建一个空类,使用注解的方式,把要一起执行的测试类作为参数传入空类中,执行空类就会执行传入的测试类,使用方法如下:

    package com.manager.junit;
    import org.junit.runner.*;
    import org.junit.runners.Suite;
    
    @RunWith(Suite.class)
    @Suite.SuiteClasses({JunitTest.class})
    public class SuitTest {
    
    }
    

    报错:junit4的报错方式有两种:error 和 failure

    error指的是被测试方法有错误

    failure指的是被测试方法没有错误,但是执行结果不正确,导致测试方法失败,或者测试方法本身有错误

    注解:
    @Test 标注该方法是测试方法

    @Test(param) 注解可以传入参数,常用的如excepted="异常的类名",timeout="int" 测试类执行的限制时间,超出时间也算是测试失败

    @Ignore 一个类中存在多个测试方法,如果执行这个测试类,该注解可以让标注的方法跳过执行

    @Ignore("String") 标注的方法会跳过执行,但是会打印出输入的字符串

    @BeforeClass 在所有的测试方法执行前执行

    @before 在每一个测试方法执行前执行一次

    @after 在每一个测试方法执行完后执行一次

    @AfterClass 在所有的测试方法执行完后执行

    不积跬步无以至千里
  • 相关阅读:
    haproxy 2.5 发布
    cube.js sql 支持简单说明
    基于graalvm 开发一个cube.js jdbc driver 的思路
    apache kyuubi Frontend 支持mysql 协议
    oceanbase 资源池删除说明
    基于obd 的oceanbase 扩容说明
    jfilter一个方便的spring rest 响应过滤扩展
    cube.js schema 定义多datasource 说明
    typescript 编写自定义定义文件
    meow 辅助开发cli 应用的工具
  • 原文地址:https://www.cnblogs.com/jinxiuze/p/8119211.html
Copyright © 2011-2022 走看看