2016-11-07 51 views
1

有人可以告诉我:当测试方法失败时如何截图(jUnit 5)。我有一个基本的测试类与BeforeEachAfterEach方法。任何其他具有@Test方法的类都会扩展基类。如何在junit上测试失败截图5

+0

为什么你想要截图?究竟是什么? – Nicolai

回答

1

嗯,可以编写采用截图的java代码,例如参见here

但我非常想知道你试图用这种方法解决的实际问题。我不确定你是否已经认识到了这一点,但JUnit的主要目的是为您提供一个在各种环境中运行测试的框架。

当然,你可以在你的IDE中运行JUnit很好,也许你会发现它有助于得到一个截图。但是:“通常”单元测试也在夜间构建中运行,并且在“截屏”的环境下可能不会使有任何意义!

除此之外:screenshorts是一个非常收集信息的无效方式!当你失败时,你应该锁定文本日志文件,html/xml报告,无论如何。你希望那些失败的测试产生可以容易地消化的信息。

所以,真正的答案是:退出现在你正在做的事情,并重新考虑非屏幕截图解决方案,以解决你实际想要解决的问题!

+0

嗨!感谢您的回答!但是我在appium上使用这个框架并在ios真实设备上运行测试。这将是有用的截图,看看问题是什么。 –

1

您不需要为JUnit测试失败/传递进行屏幕截图,而是推荐的方法是自动生成各种报告(测试通过/失败报告,代码覆盖报告,代码复杂性报告等)。低于工具/插件。

您可以使用的Cobertura Maven插件Sonarqube代码质量工具使这些将自动为您生成报告。

你可以看看here的Cobertura,Maven的插件hereSonarqube了解更多详情。

您需要将这些工具与您的CI(持续集成)环境集成,并确保如果代码没有通过某些质量(测试覆盖率,代码复杂度等),那么项目构建(战争/耳朵)会自动失败。

相关问题