Java 单元测试:一个测试中有两个场景?
我想知道我是否有测试方法:Java 单元测试:一个测试中有两个场景?,java,unit-testing,testing,Java,Unit Testing,Testing,我想知道我是否有测试方法: public boolean validString(String str) { ... } 这样做很好: public void should_valid_string() { assertTrue(validString("okString")); assertFalse(validString("wrongString")); } 或者最好做两个测试?在我看来,这取决于您的测试用例一次失败的可能性有多大。在您的示例中,如果第一个断言失败,您不知
public boolean validString(String str) {
...
}
这样做很好:
public void should_valid_string() {
assertTrue(validString("okString"));
assertFalse(validString("wrongString"));
}
或者最好做两个测试?在我看来,这取决于您的测试用例一次失败的可能性有多大。在您的示例中,如果第一个断言失败,您不知道第二个断言是否正常。如果你在两个测试中把它们分开,你会得到一个原子答案。只要你测试所有不同的场景,我认为这并不重要。请记住,如果您在两个测试中分别执行
@Before
和@Before
将在每个测试之前和之后执行,以防它们被定义,因此在某些情况下可能很重要