4月26日

实验四

Calculator.java

package org.example;

public class Calculator {
    // 加法
    public int add(int a, int b) {
        return a + b;
    }
    // 减法
    public int subtract(int a, int b) {
        return a - b;
    }
    // 乘法
    public int multiply(int a, int b) {
        return a * b;
    }
    // 除法
    public double divide(int a, int b) {
        if(b == 0) throw new ArithmeticException("Cannot divide by zero");
        return (double) a / b;
    }
}

CalculatorTest.java

package org.example;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;

class CalculatorTest {
    private Calculator calculator;

    @BeforeEach
    void setUp() {
        calculator = new Calculator();
    }

    @Test
    void testAdd() {
        assertEquals(5, calculator.add(2, 3));
        assertEquals(-1, calculator.add(2, -3));
    }

    @Test
    void testSubtract() {
        assertEquals(1, calculator.subtract(4, 3));
        assertEquals(7, calculator.subtract(10, 3));
    }

    @Test
    void testMultiply() {
        assertEquals(6, calculator.multiply(2, 3));
        assertEquals(-6, calculator.multiply(2, -3));
    }

    @Test
    void testDivide() {
        assertEquals(2.0, calculator.divide(6, 3));
        assertEquals(3.333, calculator.divide(10, 3), 0.001);
    }

    @Test
    void testDivideByZero() {
        assertThrows(ArithmeticException.class, () -> calculator.divide(5, 0));
    }
}

 

posted @ 2025-04-28 15:14  KuanDong24  阅读(14)  评论(0)    收藏  举报