Bắt đầu ngayBắt đầu miễn phí

CsvSource: Chữ số

Bạn đã xem lại lastDigit() từ Chương 1, và lần này bạn đã xử lý các giá trị âm bằng Math.abs(). Giờ bạn biết có thể rút gọn bài kiểm thử với @ParameterizedTest, bạn muốn kiểm thử mọi kết quả của lastDigit() trong một lượt.

Hãy kiểm tra phương thức trả về đúng chữ số cho các số nguyên dương, âm, và kết thúc bằng 0.

Bài tập này là một phần của khóa học

Nhập môn Kiểm thử trong Java

Xem khóa học

Hướng dẫn bài tập

  • Dùng annotation để đưa nhiều giá trị vào một phương thức kiểm thử.
  • Thêm các đối số phương thức cho phương thức kiểm thử.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

public class LastDigitWithTests {
  public static void main(String[] args) {
    launchTestsAndPrint(LastDigitTest.class);
  }
}

class LastDigit {
    public static int lastDigit(int a) {
        return Math.abs(a) % 10;
    }
}

class LastDigitTest {

    @ParameterizedTest
    // Use the correct annotation for a pair of integer inputs
    @____(value = {"2025, 5", "-2025, 5", "2020, 0"}) 
    // Write the corresponding argument types for the test method
    void testLastDigit(____ number, ____ expected) {
        int actual = LastDigit.lastDigit(number);

        assertEquals(expected, actual);
    }
}
Chỉnh sửa và Chạy Mã