JUnit 测试框架具有以下重要特性:
- 测试工具
- 测试套件
- 测试运行器
- 测试分类
测试工具
测试工具是一整套固定的工具用于基线测试。测试工具的目的是为了确保测试能够在共享且固定的环境中运行,因此保证测试结果的可重复性。它包括:
在所有测试调用指令发起前的 setUp() 方法。
在测试方法运行后的 tearDown() 方法。测试套件
测试套件意味捆绑几个测试案例并且同时运行。在 JUnit 中,@RunWith 和 @Suite 都被用作运行测试套件。测试运行器
测试运行器 用于执行测试案例。JUnit 测试分类
测试分类是在编写和测试 JUnit 的重要分类。几种重要的分类如下:
包含一套断言方法的测试断言
包含规定运行多重测试工具的测试用例
包含收集执行测试用例结果的方法的测试结果- 报错:junit 4.12版本 报错:java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing
解决:
是缺少hamcrest包。
官网又看了一下,结果发现这样一段话:
- junit.jar: Includes the Hamcrest classes. The simple all-in-one solution to get started quickly.Starting with version 4.11, Hamcrest is no longer included in this jar.
- junit-dep.jar: Only includes the JUnit classes but not Hamcrest. Lets you use a different Hamcrest version.
从4.11版本开始,Hamcrest包不包括在junit jar包中。
需要引入hamcrest-all-1.3.jar。
- JUnit的jar包和hamcrest的jar包关系
junit和hamcrest是两个不同的框架,不同的东西。只不过是junit使用了hamcrest框架而已。