如何让 espresso 测试在特定条件下失败
How to let espresso tests fail for a specific condition
对于我的浓缩咖啡测试,如果不满足特定条件,我正在寻找一种方法让所有测试在 运行 之前失败。我怎样才能做到这一点?
您尝试过 System.exit(-1) 或 System.exit(0) 吗?其中之一应该根据您要检查的条件满足您的目的。您可以阅读更多关于它们的信息 here。
如何创建一个 jUnit 规则来处理这个问题?特别是验证者规则。 https://github.com/junit-team/junit4/wiki/rules#verifier-rule
Verifier 是 ErrorCollector 等规则的基础 class,它可以转
否则,如果验证检查失败,则将测试方法传递给失败的测试。
private static String sequence;
public static class UsesVerifier {
@Rule
public final Verifier collector = new Verifier() {
@Override
protected void verify() {
sequence += "verify ";
}
};
@Test
public void example() {
sequence += "test ";
}
@Test
public void verifierRunsAfterTest() {
sequence = "";
assertThat(testResult(UsesVerifier.class), isSuccessful());
assertEquals("test verify ", sequence);
}
}
对于我的浓缩咖啡测试,如果不满足特定条件,我正在寻找一种方法让所有测试在 运行 之前失败。我怎样才能做到这一点?
您尝试过 System.exit(-1) 或 System.exit(0) 吗?其中之一应该根据您要检查的条件满足您的目的。您可以阅读更多关于它们的信息 here。
如何创建一个 jUnit 规则来处理这个问题?特别是验证者规则。 https://github.com/junit-team/junit4/wiki/rules#verifier-rule
Verifier 是 ErrorCollector 等规则的基础 class,它可以转 否则,如果验证检查失败,则将测试方法传递给失败的测试。
private static String sequence;
public static class UsesVerifier {
@Rule
public final Verifier collector = new Verifier() {
@Override
protected void verify() {
sequence += "verify ";
}
};
@Test
public void example() {
sequence += "test ";
}
@Test
public void verifierRunsAfterTest() {
sequence = "";
assertThat(testResult(UsesVerifier.class), isSuccessful());
assertEquals("test verify ", sequence);
}
}