java - 自定义单元测试结果

标签 java unit-testing testing

有没有办法在 TestNG/JUnit(或任何其他 Java 测试框架)中创建自定义单元测试结果?我知道单元测试可以通过,也可以失败(或忽略),但目前我真的很想有第三种选择。

我现在工作的公司采用了巧妙地比较其应用程序屏幕截图的测试风格,因此当屏幕截图与预定容差不匹配时,测试可以通过、失败或差异。此外,他们还有自己的内部测试“框架”和运行程序。这是在我加入之前很久就完成的。

我想做的是将测试框架迁移到标准框架之一,但这个过程应该非常循序渐进。

我考虑的方法是创建一个特殊的异常(例如 DiffTolleranceExcededException),使测试失败,然后在报告中自定义测试结果。

最佳答案

也许您已经有了以下意思

The approach I was thinking about was to create a special exception (e.g. DiffTolleranceExcededException), fail the test and then customize test result in the report.

但以防万一:您当然可以使用为断言提供预定义消息字符串的可能性。在您的情况下,如果屏幕截图相同,则测试通过。如果它们相差太大,测试就会失败。如果它们在公差范围内,您可以让它们失败并显示诸如“不同但在公差范围内”之类的消息或其他任何消息 - 这些失败很容易区分。当然,你也可以倒过来逻辑:给不在容差范围内的故障添加信息,让这些在视觉上突出。

关于java - 自定义单元测试结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34851052/

相关文章:

java - 通过 html 表和 Swing 拖放?

java - 线程干扰实际上是如何发生在 `Counter` 示例类中的?

reactjs - 如何获取 enzyme 中的根标签名称?

visual-studio - MS VS 测试运行程序异常

java - Play Framework 2.2.1 : Create Http. 测试上下文

javascript - 在本地计算机上使用 Javascript 轻松开发的最佳方法

java - Android Loader 是否在单独的线程中执行其工作?

java - 在启动时启动应用程序

ruby-on-rails - 如何在 Rails 中测试 lib 文件?

php - Symfony2 FOS RestBundle 测试