运行 不依赖终端的孤立测试? IntelliJ IDEA

Running Isolated Tests Without Relying on Terminal? IntelliJ IDEA

我明白我应该使用 sure-fire plugin for unit tests, and failsafe 进行整合。我可以 运行 使用 mvn test 进行单元测试,使用 mvn verify 进行集成测试,但这让我很烦恼,原因有两个:

  1. 我希望能够 select 任何测试 class(或 class 中的方法)和 运行 它分别通过一次简单的点击,而不是每次都在终端中输入。

  2. 终端 returns 测试结果难看 black/white 段落,需要我筛选它们。我更希望以视觉上有组织的方式返回结果,类似于我在 IntelliJ 中右键单击测试 class 并单击“RunDemoTest”。这会产生:

我发现错误结果更容易筛选,例如它在左侧显示 red/green @Test 结果,在右侧它干净地将错误组织成

Expected : 3

Actual :1

我确信使用终端进行自动化测试有好处 运行s 稍后投入生产,但在开发过程中我没有发现终端有利于我的修补。

我如何从 IntelliJ 的测试结果视觉反馈中获益,同时确保单元测试和集成测试 运行 分开,并保留我挑选哪个 测试的自由 classes和测试方法我可以随时运行?

我假设我不能吃蛋糕也不能吃。请解释。

如果您使用的是 IntelliJ 视图 "Maven Projects" 您可以很容易地切换 on/off maven 集成测试的执行。

通过 "Run/Debug Configurations" 您可以创建符合您要求的测试执行,以获得舒适的 UI。

完成这些步骤后,下拉列表中有一个新条目"Run/Debug configurations"。当您启动新的 JUnit 测试配置时,将执行定义的测试并以与您问题中的屏幕截图完全相同的方式显示结果

我第二张截图中的选项允许非常灵活地定义范围。您不必转到每个 java 文件并单击编辑器视图中的绿色箭头。

此配置与任何 maven 配置无关,您可以在编码过程中随时使用它们。