欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

单元测试框架之——JUnit

程序员文章站 2024-03-15 18:42:21
...

Java语言编写的Webdriver测试程序通常使用单元测试框架运行,所以有必要了解单元测试框架的使用技巧。
单元测试框架包括JUnit单元测试框架和TestNG单元测试框架

JUnit单元测试框架
1、安装JUnit4
步骤如下:
(1)新建一个Java工程
(2)右击工程,选择“properties”标签栏,单击“add library”按钮。
(3)选择“Java build path”选项,单击“library”标签栏,单击“add library”按钮。
(4)选择“JUnit”选项,单击“next”按钮。
(5)在弹出的对话框中,点击“finish”按钮。
(6)在“Java build path”对话框中,显示JUnit图标,表示引入JUnit4成功。
2、JUnit的常见注解
被测试代码如下:

package cn.gloryroad;

public class Calculator {

    public int result = 0;
    public int add(int operand1,int operadn2){
        result = operand1 + operadn2;//两数相加
        return result;
    }
    public int subtract(int operand1,int operand2){
        result = operand1 - operand2;//两数相减
        return result;
    }
    public int multiple(int operand1,int operand2){
        result = operand1 * operand2;//两数相乘
        for(;;){

        }//此处加入一个死循环
    }
    public int divide(int operand1,int operand2){
        result = operand1 / 0;//除数为零的除法运算
        return result;
    }
    public int getresult(){
        return this.result;//返回计算结果
    }

} 

创建JUnit4的测试代码:
(1)右击Calculator类所在的包,选择“New”->”JUnit Test Case”命令。
(2)弹出”JUnit Test Case”的对话框,在“name”输入框输入“CalculatorTest”,并勾选“setUpBeforeClass()”、“tearDownAfterClass()”、“setUp()”、“tearDown()”四个选项,并在“Class under test”输入框中输入“cn.gloryroad.Calculator”,点“finish”完成。
(3)自动生成以下代码。完成JUnit4测试用例的创建工作,基于基本的测试需求,可在此模板基础上编写单元测试代码。

package cn.gloryroad;

import static org.junit.Assert.*;

import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;

public class CalculatorTest {

    @BeforeClass
    public static void setUpBeforeClass() throws Exception {
    }

    @AfterClass
    public static void tearDownAfterClass() throws Exception {
    }

    @Before
    public void setUp() throws Exception {
    }

    @After
    public void tearDown() throws Exception {
    }

    @Test
    public void test() {
        fail("Not yet implemented");
    }

针对Calculator类的内部实现逻辑,创建如下测试代码

package cn.gloryroad;

import static org.junit.Assert.*;

import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Ignore;
import org.junit.Test;

public class CalculatorTest {

    @BeforeClass
    public static void setUpBeforeClass() throws Exception {
        System.out.println("@BeforeClass");
    }

    @AfterClass
    public static void tearDownAfterClass() throws Exception {
        System.out.println("@AfterClass");
    }

    @Before
    public void setUp() throws Exception {
        System.out.println("测试开始");
    }

    @After
    public void tearDown() throws Exception {
        System.out.println("测试结束");
    }

    @Test
    public void testadd() {
        Calculator cal = new Calculator();
        cal.add(2, 2);
        assertEquals(4, cal.getresult());
    }

    @Test
    public void testSubstract(){
        Calculator cal = new Calculator();
        cal.subtract(4, 2);
        assertEquals(2, cal.getresult());
    }

    @Ignore
    public void testMultiple(){
        fail("Not yet implemented");
    }

    @Test(timeout = 2000)//表示此用例执行时间不能超过2秒
    public void testDivide(){
        for(;;);
    }

    @Test(expected = ArithmeticException.class)//判断是否为ArithmeticException异常,如果是,则设定此测试用例为成功执行状态。
    public void testDivideByZero(){
        Calculator cal = new Calculator();
        cal.divide(4, 0);
    }

}

运行结果:
单元测试框架之——JUnit

JUnit常见注解及其含义:
单元测试框架之——JUnit

3、创建JUnit4 Test Suit
步骤如下:
(1)在同一个包下新建一个测试类,命名为“TestCalculator2”,测试类的具体代码如下:

package cn.gloryroad;

import org.junit.Test;

public class TestCalculator2 {
    @Test
    public void test() {
        System.out.println("TestCalculator2的测试方法被调用");
    }

}

(2)创建成功后,右击工程名称,选择“new”->“other”命令。
(3)在弹出的对话框中选择“Java”->“JUnit”下的“JUnit Test Suit”选项,点击“next”。
(4)在弹出的对话框中,选中“TestCalculator”和“TestCalculator2”这两个类,点击“finish”。
(5)自动生成了一个名为“AllTests”的测试类,执行此类代码,两个测试类均被执行。
单元测试框架之——JUnit

相关标签: 单元测试框架