【发布时间】:2023-03-27 19:37:02
【问题描述】:
在我的项目中,我看到我们有大量的方法来测试某些东西。如果你想了解发生了什么,你应该看看 throw all 方法。当您有一个包含 20 种测试方法的类时,您很难在这么多方法中找到一个/多个测试用例。
我从未见过使用接口来定义测试用例涵盖的内容。
例如
puclic class A{
public SomeResult doSomething(Param param){
.....
}
..... some other methods
}
对于这种方法有4种情况(例如);
- 使用空参数检查方法是否按预期工作
- 检查方法是否为某些参数区域抛出运行时异常
- 检查方法是否返回预期结果(正常情况)
- 检查不同的东西
在我们测试这些案例的项目中,人们只需创建 4 个方法(它们可以按任何顺序编写,例如测试类开头出现的 2 个第一个案例,最后一秒可以写在末尾(200 行代码)以下))。另外从测试的名称中也不一定能清楚地知道检查的测试方法。
这样在接口中描述测试用例是不是很好:
public interface ATestSpecification{
void doSomething_checkForNullParam();
void doSomething_checkExceptionForNotAllowedParam();
void doSomething_normalCase();
void doSomething_checkSomethingDifferent();
}
还有测试课:
public class ATest implement ATestSpecification{
...
//implenent test cases , described in test specification
...
}
【问题讨论】:
标签: unit-testing junit