CsvSource:数字
您已经回顾了第 1 章中的 lastDigit(),这次使用 Math.abs() 处理了负数情况。既然您已经知道可以用 @ParameterizedTest 精简测试,您尝试在一次运行中覆盖 lastDigit() 的所有结果。
请验证该方法对正数、负数以及以 0 结尾的整数都能返回正确的个位数字。
本练习是课程的一部分
Java 测试入门
练习说明
- 使用可向测试方法输入多个值的注解。
- 为测试方法添加方法参数。
交互式实操练习
通过完成这段示例代码来试试这个练习。
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);
}
}