gpt4 book ai didi

java - 测试 JUnit 中方法的合法和非法参数

转载 作者:行者123 更新时间:2023-12-03 23:02:35 25 4
gpt4 key购买 nike

如果我想测试输入是否有效,我该如何使用JUnit4来测试该方法是否处理了非法输入/参数?

要调用setAge() 方法,参数必须是整数而不是字符或字符串。

@Test
public void testWHetherInputValid() {
Person p = new Person();
String s = "abc";
p.setAge(s); // but actually, the correct input must be an integer
}

最佳答案

如果 setAge 接收到一个 int,编写一个将 String 传递给它的测试是没有意义的——这样的调用不会甚至编译。

测试用于捕获编译器无法检测到的运行时错误。例如,假设 Person 的年龄必须是正整数。例如,传递 -1 应该会导致函数抛出 IllegalArgumentException - 这可以通过在 @Test 中指定预期的异常来测试注释:

@Test(expected = IllegalArgumentException.class)
public void testWHetherInputValid() {
Person p = new Person();
int invalidAge = -1;
p.setAge(invalidAge);
}

关于java - 测试 JUnit 中方法的合法和非法参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27807898/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com