java junit4 for_Java Junit 单元测试

先编写一个类

public class Calculator {

public int result = 0;

public int add(int operand1, int operand2) {

result = operand1 + operand2;

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 = 1/0;

return result;

}

public int getResult() {

return this.result;

}

}

然后在类名上右键新建Junit 测试 Case:

17e444cc22a4fb0979e34136d4b73c76.png

之后编写测试代码:

import static org.junit.Assert.*;

import static org.junit.jupiter.api.Assertions.assertEquals;

import static org.junit.jupiter.api.Assertions.fail;

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 CalculatorTest2 {

private static Calculator cal = new Calculator();

@BeforeClass

public static void setUpBeforeClass() throws Exception {

System.out.println("Beforeclass");

}

@AfterClass

public static void tearDownAfterClass() throws Exception {

System.out.println("after class");

}

@Before

public void setUp() throws Exception {

System.out.println("开始");

}

@After

public void tearDown() throws Exception {

System.out.println("结束");

}

@Test

public void testAdd() {

cal.add(2, 2);

assertEquals(4, cal.getResult());

System.out.println("测试加");

}

@Test

public void testSub() {

cal.subtract(4, 2);

assertEquals(3,cal.getResult());

System.out.println("测试减");

}

@Ignore

public void testMul() {

fail("not yet implemented");

}

@Test(timeout = 2000)

public void testDivide() {

for(;;);

}

@Test(expected = ArithmeticException.class)

public void testDiv() {

cal.divide(4, 0);

}

}

测试结果:

6d1f4ae5709f218753ec45150cbc4d99.png

注意:

Junit4 和 Junit5 的语法不一样,不要混用。

否则会报the attribute timeout is undefined for the annotation type Test类似的错。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值