public class Calculator { public int result = 0; public int add(int operandl, int operand2) { result = operandl + operand2; return result; } public int subtract(int operandl, int operand2) { result = operandl - operand2; return result; } public int multiple(int operandl, int operand2) { result = operandl * operand2; for (; ; ) { } } public int divide(int operandl, int operand2) { result = operandl / 0; return result; } public int getResult() { return this.result; } }
public class CalculatorTest { public static Calculator cal = new Calculator(); //测试开始前只能被执行一次 @BeforeClass public static void setUpBeforClass() 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 testSubstract() { cal.subtract(4, 2); assertEquals(2, cal.getResult());// fail("Not yet implemented"); } @Test public void testAdd() { cal.add(2, 2); assertEquals(4, cal.getResult());// fail("Not yet implemented"); } //忽略执行 @Ignore public void testMultiply() { fail("Not yet implemented"); } //测试用例时间不能超过2s,死循环时间超过2s @Test(timeout = 2000) public void testDivide() { for (; ; ) ; } //执行之后抛出异常才成功 @Test(expected = ArithmeticException.class) public void testDivideByZero() { cal.divide(4, 0); } }
时间: 2024-09-30 02:08:26