单元测试框架之——JUnit

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常见注解及其含义:
这里写图片描述

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”的测试类,执行此类代码,两个测试类均被执行。
这里写图片描述

猜你喜欢

转载自blog.csdn.net/fengke1813/article/details/80246225