当前位置: 首页 > 知识库问答 >
问题:

Gradle相当于IntelliJ的运行选项分叉模式:方法

燕刚捷
2023-03-14

我的java gradle-project中的测试需要通过IntelliJ和Fork Mode设置为method来执行。我希望能够通过默认的gradle任务来运行测试,但是我找不到一个等效的分叉选项。我尝试添加到我的build.gradle

test{
   forkEvery = 1
   maxParallelForks = 1
}

不幸的是,这并没有产生预期的结果。我还尝试添加@TestInstance(TestInstance.Lifecycle.PER_方法,但效果并不理想。有没有办法在gradle中重现IntelliJ的Fork模式:Method

共有1个答案

吴高畅
2023-03-14

不,不可能用Gradle实现IDEA的“分叉模式:方法”。fork每次都在测试类级别工作(设置为1的fork每次告诉Gradle为每个测试类生成一个新的JVM)。

我建议你改为修改你的测试。必须在单独的JVM中运行每个测试方法意味着测试不是独立的,也不是共享状态。说到测试,这是一个禁忌。

作为一个(糟糕的)解决方案,您可以将当前类拆分为N个类(其中N是测试方法的数量),每个类都包含一个测试方法,然后使用fork每位

 类似资料:
  • 我错过了什么? 编辑: 看来Gradle也不接我的测试。当我转到时,它指示0 test。 在IntelliJ中,我打开Gradle窗口,点击“刷新所有Gradle项目”按钮,刷新库。 然后在我的测试类中,我在类声明的顶部添加了。 当我执行时,结果可以在下面找到:

  • Hadoop版本=2.4.1 hbase版本=0.98.6 我已经在下面的conf上启动并顺利运行了hadoop: 107.108.86.119-hadoop namenode,secondarynamenode 107.109.155.100-datanode1 107.109.155.102-datanode2 现在我按以下方式安装hbase:- 107.108.86.114:-hmaster

  • 问题内容: 我正在尝试在我的Spring Boot项目构建中实现一个简单的方案:包括/排除依赖项以及根据环境打包战争或jar。 因此,例如,对于环境包括devtools和package jar,对于包war等。 我知道它不再是基于XML的配置了,我基本上可以在build.gradle中编写if语句,但是有没有推荐的方法来实现这一点? 我可以声明一些常见的依赖项并将它们引用在一个文件中,而不是创建多

  • 主要内容:创建临时配置,创建永久配置,创建新配置,共享配置IntelliJ IDEA 有很多方法可以为正在运行的项目创建配置。配置选项是: 创建临时配置 创建永久配置 在用户之间共享配置 创建临时配置 创建项目 创建Java 类 右键单击并选择运行选项 在运行菜单上添加了临时配置。 创建永久配置 当我们使用 Intellij Idea保存临时配置时,它可以转换为永久配置。要保存此配置,请单击“Run”菜单上的“Save Configuration”。我们

  • 问题内容: 我想获得当前的方法名称,以便在与此格式相似的格式消息中使用 另外,我想使用_cmd设置关联对象。我很欣赏任何想法。 问题答案: 没有与的Swift等效项。没有理由在Swift中使用它。 在Objective- C中考虑。什么时候有用?大多数情况下,的值将与代码所在的方法的名称相同,因此在编译时就已知道该值,并且不需要运行时值。以下是一些可能在Objective- C中有用的情况: 在宏

  • 我在IntelliJ IDEA中运行一个Spring Boot应用程序,并注意到通过运行选项卡(运行菜单)和通过终端选项卡的手动命令运行它的不同。 如果我通过maven run目标(play按钮)运行它,我在“run”选项卡内看不到任何颜色。如果我通过“MVN Spring-Boot:run”从“Terminal”选项卡运行它,我会看到漂亮的颜色亮点。maven run配置也运行相同的命令spri