intellij-idea - 为什么在 IntelliJ 中运行 TestCase 时 JUnit Jupiter 和 JUnit Vintage 分开了?

标签 intellij-idea junit junit5

我看到JUnit5发布了,我申请了IntelliJ V2016.2.1并运行了一些测试用例。

所以看到下面的截图。

a busy cat

我只有两个问题。

  • 为什么在 IntelliJ 中运行 TestCase 时 JUnit Jupiter 和 JUnit Vintage 分开了?
  • 我可以合并 JUnit 4 和 5 测试结果吗?
  • 最佳答案

    JUnit 5 不仅仅是一个新的 API(称为 JUnit Jupiter)。它还包含一个抽象层,用于运行 JUnit 测试的工具(称为 JUnit 平台)。该平台不了解 JUnit 4 或 Jupiter 或其他任何东西。它所知道的只是测试引擎,它将执行为它们编写的测试。

    (您可以在 user guide 或我写的关于 JUnit 5's architecture 的帖子中阅读更多相关信息。)

    1. Why were JUnit Jupiter and JUnit Vintage seperated When I Running TestCase in IntelliJ?


    您看到的是启动器执行两个引擎,一个用于新 API (Jupiter),另一个用于 JUnit 4 (Vintage)。每个引擎都代表它在自己的数据结构中运行的测试,IntelliJ 将其显示为您看到的树。

    1. Can i Merge JUnit 4 and 5 TestResults?


    这必须是 IDE 功能,据我所知,尚未实现。

    关于intellij-idea - 为什么在 IntelliJ 中运行 TestCase 时 JUnit Jupiter 和 JUnit Vintage 分开了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38822189/

    相关文章:

    java - 为什么idea和eclipse中ContextConfiguration位置不同

    java - 使用 IntelliJ 和 Git 切换分支

    java - 如何在某些测试中禁用 flapdoodle 嵌入式 mongodb

    java - JUnit - 分享不同实现的测试

    java - junit5 创建临时文件

    intellij-idea - 如何在 IntelliJ 中从搜索中排除文件夹/文件?

    java - JerseyTest 不满足依赖关系(依赖注入(inject))

    java - JUnit4:@Transactional 即使在测试用例完成之前也会删除数据

    java - 在遇到某种方法时中断单元测试的流程

    java - 为什么 JUnit 5 测试不从抽象类继承 @Test 注解?