JUnit简单测试

Posted lyd447113735

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JUnit简单测试相关的知识,希望对你有一定的参考价值。

创建一个应用POJO类,也就是一个JavaBean

package Test;

//雇员类,用于取得或设置雇员的姓名、薪水、年龄
public class EmployeeDetails {

    private String name;
    private double monthlySalary;
    private int age;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public double getMonthlySalary() {
        return monthlySalary;
    }

    public void setMonthlySalary(double monthlySalary) {
        this.monthlySalary = monthlySalary;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }
}




创建一个EmpBusinessLogic类用于对年薪和评估金额的计算

package Test;

public class EmpBusinessLogic {

    //    计算雇员的年薪
    public double calculateYearlySalary(EmployeeDetails employeeDetails) {
        double yearlySalary = 0;
        yearlySalary = employeeDetails.getMonthlySalary() * 12;
        return yearlySalary;
    }

    //    计算雇员的评估金额
    public double calculateAppraisal(EmployeeDetails employeeDetails) {
        double appraisal = 0;
        if (employeeDetails.getMonthlySalary() < 10000) {
            appraisal = 500;
        } else {
            appraisal = 1000;
        }
        return appraisal;
    }


}




创建一个测试案例类,对评估金额和年薪进行测试

package Test;

import org.junit.Test;

import static org.junit.Assert.assertEquals;

public class TestEmplyeeDetails {

    EmployeeDetails employeeDetails = new EmployeeDetails();
    EmpBusinessLogic empBusinessLogic = new EmpBusinessLogic();

//    测试评估金额
    @Test
    public void testCalculateAppriasal(){
        employeeDetails.setName("杨胖子");
        employeeDetails.setAge(25);
        employeeDetails.setMonthlySalary(8000);

        double appraisal = empBusinessLogic.calculateAppraisal(employeeDetails);

        assertEquals(500,appraisal,0.0);
    }

//    测试雇员的年薪
    @Test
    public void testCalculateYearSalary(){
        employeeDetails.setName("杨胖子");
        employeeDetails.setAge(25);
        employeeDetails.setMonthlySalary(8000);

        double salary = empBusinessLogic.calculateYearlySalary(employeeDetails);

        assertEquals(96000,salary,0.0);
    }


}




执行测试案例类

package Test;

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(TestEmplyeeDetails.class);

        for(Failure failure:result.getFailures()){
            System.out.println(failure);
        }

        System.out.println(result.wasSuccessful());


    }
}

以上是关于JUnit简单测试的主要内容,如果未能解决你的问题,请参考以下文章

junit4单元测试--web项目中模拟登录会话,做全流程测试

java02 Junit创建及简单实现

JUnit单元测试

JUnit单元测试

使用java.lang.Exception的错误:测试类应该只有一个公共构造函数

如何使用junit编写测试类