什么是 Junit 测试框架?
JUnit 是一个回归测试框架,被开发者用于实施对应用程序的单元测试,加快程序编制速度,同时提高编码的质量。JUnit 测试框架能够轻松完成以下任意两种结合:
- Eclipse 集成开发环境
- Ant 打包工具
- Maven 项目构建管理
特性
JUnit 测试框架具有以下重要特性:
- 测试工具
- 测试套件
- 测试运行器
- 测试分类
测试工具
测试工具是一整套固定的工具用于基线测试。测试工具的目的是为了确保测试能够在共享且固定的环境中运行,因此保证测试结果的可重复性。它包括:
- 在所有测试调用指令发起前的 setUp() 方法。
- 在测试方法运行后的 tearDown() 方法。
让我们来看一个例子:
import junit.framework.*;public class JavaTest extends TestCase {protected int value1, value2;// assigning the valuesprotected void setUp(){value1=3;value2=3;}// test method to add two valuespublic void testAdd(){double result= value1 + value2;assertTrue(result == 6);}}
测试套件
测试套件意味捆绑几个测试案例并且同时运行。在 JUnit 中,@RunWith 和 @Suite 都被用作运行测试套件。以下为使用 TestJunit1 和 TestJunit2 的测试分类:
import org.junit.runner.RunWith;import org.junit.runners.Suite;//JUnit Suite Test@RunWith(Suite.class)@Suite.SuiteClasses({TestJunit1.class ,TestJunit2.class})public class JunitTestSuite {}import org.junit.Test;import org.junit.Ignore;import static org.junit.Assert.assertEquals;public class TestJunit1 {String message = "Robert";MessageUtil messageUtil = new MessageUtil(message);@Testpublic void testPrintMessage() {System.out.println("Inside testPrintMessage()");assertEquals(message, messageUtil.printMessage());}}import org.junit.Test;import org.junit.Ignore;import static org.junit.Assert.assertEquals;public class TestJunit2 {String message = "Robert";MessageUtil messageUtil = new MessageUtil(message);@Testpublic void testSalutationMessage() {System.out.println("Inside testSalutationMessage()");message = "Hi!" + "Robert";assertEquals(message,messageUtil.salutationMessage());}}
测试运行器
测试运行器 用于执行测试案例。以下为假定测试分类成立的情况下的例子:
import org.junit.runner.JUnitCore;import org.junit.runner.Result;import org.junit.runner.notification.Failure;public class TestRunner {public static void main(String[] args) {Result result = JUnitCore.runClasses(TestJunit.class);for (Failure failure : result.getFailures()) {System.out.println(failure.toString());}System.out.println(result.wasSuccessful());}}
JUnit 测试分类
测试分类是在编写和测试 JUnit 的重要分类。几种重要的分类如下:
- 包含一套断言方法的测试断言
- 包含规定运行多重测试工具的测试用例
- 包含收集执行测试用例结果的方法的测试结果
转载本站内容时,请务必注明来自W3xue,违者必究。


优化或报错有奖
皖公网安备34020702000426号