如果不使用karate-junit5进行测试,它的目的是什么?

皮特·爱德华兹

空手道文档有2个使用空手道和JUnit5进行测试的示例:

在第二个示例中,我仅使用空手道核心(0.9.9-RC2)创建了一个项目,不需要空手道Junit5。有什么不同?

空手道所提供的产品给我留下了深刻的印象,并且我对创建一个测试工具很有兴趣,该工具可能需要根据运行时标准进行测试,并且还需要自定义报告,因此我正在寻找最简单的方法测试跑步者。karate-junit5中的代码似乎是一个很好的起点,但我只是想了解为什么正常运行的测试实际上并不需要它。

彼得·托马斯

很好的问题,我可以回答。没错,直接使用Runner类就足够了,这是并行运行测试的唯一方法。

但是,如果您使用JUnit运行器,则将获得Java开发人员惯用的“绿条”体验,并且我们确保IDE UI(例如,测试运行和失败的树状视图)已填充。如果我没记错的话,在IntelliJ中,当您单击“测试用例”节点之一时,甚至可以看到日志。

编辑:请注意,我的意思是在这里您可以Scenario在IDE中看到每个数据,而不是包含JUnit测试的Java类。下面的IntelliJ屏幕截图。因此,这可以方便地快速查看失败的内容和相应的错误消息,而不必深入研究日志/ HTML报告:

在此处输入图片说明

但是,我认为一旦习惯了看空手道输出的HTML报告,就不需要JUnit集成了。

总结一下:JUnit支持是

a)因为我们以Cucumber扩展名开始(甚至@KarateOptions不建议使用注释)

b)因为有些人喜欢IDE集成+经验,并且在开发人员模式下一次运行“一次测试”非常有用

您的评论使我更加相信,我们最终可以弃用JUnit支持。一旦有更多的机会玩耍,最好能就此获得您的反馈。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用Selenium Webdriver和junit5进行端到端测试的最佳方法是什么?

使用Junit5进行Gradle多项目集成测试

如果不使用返回值,ʻunwrap()`的目的是什么?

如何使用Junit5和Jacoco配置build.gradle以进行测试覆盖

在 Spring Boot 中使用 JUnit5 和 Mockito 进行集成测试

使用LiveData进行JUnit5测试不会执行订阅者的回调

使用带有 jUnit5 和 SpringBoot 的随机端口进行契约测试

如果不使用@override,我的PolymerDart方法中的目的是什么?

Android Firebase测试实验室-使用Orchestrator进行仪器测试,其目的是什么?

无法使用Maven执行Junit5测试

使用 JUNIT5 测试用例处理多个异常

如何使用 JUnit5 在 OpenEJB 中测试 EJB Bean?

如果引用变量,为什么不使用return($ var)?

如果我不使用deletelater删除qthread会发生什么?

如果不使用任何参数,xargs会做什么?

为什么要使用JUnit进行测试?

在junit5上使用测试服测试多个类即将挂起

Angular CLI依赖项-如果不使用@ angular / router,为什么需要安装它?

如果不使用srandom()进行初始化,random()会使用什么种子?

正确配置JUNIT5以进行测试

如果不使用任何I / O,NodeJS异步函数的用途是什么?

如果不使用返回值,Class.forName()的用途是什么?

为什么Eclipse在应使用JUnit4时尝试使用JUnit5?

如何使用JUnit5为Kafka消息使用者测试PACT

在整个测试中使用通用Webdriver对象的目的是什么

无法使用JUnit5控制台启动器运行测试

如何使用Maven运行作为插件安装到Eclipse应用程序的JUnit5测试

如何使用 JUnit5 在 Micronaut 的控制器测试中模拟服务类?

无法在Docker容器中使用Bazel运行JUnit5测试