当前位置: 首页 > 面试题库 >

JUnit 4.11在@After中获取测试结果

轩辕翰
2023-03-14
问题内容

有什么方法可以通过teardown(@After)方法获取测试结果?我想根据结果在测试后进行清理。

@After在junit文档中找不到太多详细信息。


问题答案:

与您要求的最接近的东西可能是TestWatcher规则。那将不能让您访问返回的结果或其他任何东西,但是您可以使用它(或创建自己的TestRule并与Description对象结合使用,可以对方法进行不同的注释,以指示需要进行哪种清理。



 类似资料:
  • 问题内容: 我写了JUnit5扩展。但是我找不到方法如何获得测试结果。 扩展看起来像这样: 有什么提示如何获得测试结果? 问题答案: 正如其他答案所指出的那样,JUnit会将失​​败的测试与异常进行通信,因此可以使用来了解发生的情况。请注意,这很容易出错,因为以后运行的扩展程序仍可能无法通过测试。 另一种方法是注册自定义TestExecutionListener。不过,这两种方法都有点round回

  • 我试图直接从我的Java代码运行JMeter测试。应该通过JMeter服务器产生负载。在代码中,我使用连接到服务器上运行的JMeter守护进程的ClientJMeterEngine实例。这工作到目前为止,我可以开始和运行我的测试。我目前不明白的是如何从测试运行完成后获得结果。我当前的代码如下所示: 客户端线程必须保持运行状态,以便客户端上的ResultCollector能够从服务器接收结果。我现在

  • 问题内容: 为了进行研究,我需要从@AfterMethod运行测试方法(@Test)后捕获结果状态(“通过” /“失败”)。 我一直在使用导入org.testng.ITestResult; 我的研究成果使访问多个在线博客后使我的工作变得更加轻松,但是, 即使断言失败 了, 也 似乎并没有像预期的那样成功,因为结果输出总是通过。 我的代码如下: 结果在控制台中: 我的期望是将测试结果转换为变量以通过

  • 问题内容: 我目前正在编写一些Android单元测试,虽然我已经按照自己想要的方式完成了大多数工作,但有一件事让我有些困惑。 我的测试活动中包含以下代码: 我试图弄清楚如何使用Instrumentation(或其他工具)来读取活动的结果,或者在活动完成后获得意图。有人可以帮忙吗? 问题答案: 您可以使用反射并直接从活动中获取值。

  • 问题内容: 我已经开始测试,现在我想用,和而我的应用程序只运行的方法和控制台提供输出 之前 但是,如果删除并运行@Test。我的代码在这里: 为什么没有,并且同时工作? 问题答案: 该级部队使用旧的JUnit 3.x的语法,这意味着任何的JUnit 4注释将无法正常工作。 执行您的方法不是因为注释,而是因为它名为,这是JUnit 类提供的方法。 因此,您有2个解决方案: 使用AlexR答案使用JU

  • 问题内容: JUnit中是否有一种方法可以在带注释的@After方法中检测测试用例是否存在测试失败或错误? 一个 丑陋的 解决方案是这样的: 这很丑陋,因为需要注意测试代码中的“基础结构”(withoutFailure标志)。 我希望可以通过@After方法获得测试状态!? 问题答案: 如果您有幸使用JUnit 4.9或更高版本,将完全按照您的要求进行。 分享并享受!