创建一个数学计算代码,通过junit进行自动化测试
时间: 2023-12-27 14:02:45 浏览: 25
好的,我可以帮你解决这个问题。下面是一个简单的数学计算代码,可以计算两个整数的和、差、积、商:
```java
public class Calculator {
public static int add(int a, int b) {
return a + b;
}
public static int subtract(int a, int b) {
return a - b;
}
public static int multiply(int a, int b) {
return a * b;
}
public static int divide(int a, int b) {
if (b == 0) {
throw new IllegalArgumentException("Cannot divide by zero");
}
return a / b;
}
}
```
上面的代码定义了一个`Calculator`类,包含了四个静态方法,分别实现了加、减、乘、除四种基本的数学计算操作。其中,`divide`方法还加入了异常处理,避免出现除以0的情况。
接下来,你可以使用JUnit框架来进行自动化测试。以下是一个测试代码示例,可以测试`Calculator`类中的四个方法:
```java
import static org.junit.Assert.assertEquals;
import org.junit.Test;
public class CalculatorTest {
@Test
public void testAdd() {
assertEquals(5, Calculator.add(2, 3));
}
@Test
public void testSubtract() {
assertEquals(-1, Calculator.subtract(2, 3));
}
@Test
public void testMultiply() {
assertEquals(6, Calculator.multiply(2, 3));
}
@Test
public void testDivide() {
assertEquals(2, Calculator.divide(6, 3));
}
@Test(expected = IllegalArgumentException.class)
public void testDivideByZero() {
Calculator.divide(6, 0);
}
}
```
上面的代码使用了JUnit框架中的注解来标记测试方法,其中`@Test`表示这是一个测试方法,`@Test(expected = IllegalArgumentException.class)`表示这个测试方法期望抛出`IllegalArgumentException`异常。你可以使用JUnit框架来运行这些测试方法,检查`Calculator`类的四个方法是否能够正确计算结果。