gpt4 book ai didi

java - 如何使用 JUnit 的 ErrorCollector 来检查发生了多少次失败?

转载 作者:太空宇宙 更新时间:2023-11-04 11:59:31 24 4
gpt4 key购买 nike

我尝试在单元测试中使用ErrorCollector,以便断言失败不会中止测试。相反,我想在测试结束时检查失败次数,并且仅当该数字大于零时才让测试失败。

所以我的基本测试如下所示:

@RunWith(AndroidJUnit4.class)
public class SampleAndroidTest {

@Rule
public ErrorCollector errors = new ErrorCollector();

@Test
public void testErrorCollector() throws Exception {
try {
assertEquals(1, 1); // should pass
} catch (Throwable t) {
errors.addError(t);
}
try {
assertEquals(1, 2); // should fail
} catch (Throwable t) {
errors.addError(t);
}
try {
assertEquals(1, 3); // should fail
} catch (Throwable t) {
errors.addError(t);
}
}
}

但是,我不确定如何处理 errors 对象。 Javadocs for ErrorCollector不指示任何获取失败次数等的方法。使用当前方法,仅显示最后一次失败。

我尝试使用toString()将对象转换为String,但这只给我一个内存地址,而不是任何其他堆栈跟踪。我确信有一种方法可以获取其他堆栈跟踪,并且解决方案很简单,但我一生都无法弄清楚。

最佳答案

经过更多研究,我发现 ErrorCollector 实际上在测试结束时打印了所有失败。之所以只显示最后一次失败,是由于 Android Studio 的设计方式所致。要获取其他堆栈跟踪,必须直接查看 Logcat 输出。

关于java - 如何使用 JUnit 的 ErrorCollector 来检查发生了多少次失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41054030/

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