在 VS Code 中为 JUnit 设置 vmArgs 的位置?
Where to set vmArgs for JUnit in VS Code?
我有一个包含大量单元测试的 Java 项目。在 Visual Studio 代码中,我可以 运行 来自“测试”选项卡的所有测试。然而,有几个失败了,因为我需要为它们提供一些必需的 VM 参数以正确 运行 。我们使用 Maven 作为构建系统。
我知道提供 VM args 的语法,但我找不到 JUnit 测试的启动配置。我只是自动生成了一个 launch.json
,但它没有 Junit 配置。然而,VS Code 清楚地知道如何启动单元测试,因为当我告诉它这样做时(从测试窗格),它 运行s 它们(即使是那些出错的)。
这个答案(Visual Studio Code launch.json file for JUnit?)表明我可以直接右键单击单元测试来提供选项,但我得到的是:
- 运行 测试
- 调试测试
- 去测试
- 隐藏测试
自动生成的 launch.json 非常基础。它生成的两个配置有点没用,因为它是一个库,而不是一个可执行程序。
{
"version": "0.2.0",
"configurations": [
{
"type": "java",
"name": "Launch Current File",
"request": "launch",
"mainClass": "${file}"
},
{
"type": "java",
"name": "Launch RunObject",
"request": "launch",
"mainClass": "com.ourcompany.RunObject",
"projectName": "OurCommon"
}
]
}
在哪里设置单元测试的虚拟机参数?
对于 Java 测试
(运行 来自小编,)我们可以用“java.test.config”!
有了这个 settings.json
:
{
"java.test.config": {
"vmArgs": ["-Dfoo=bar", "-Dbar=baz"]
},
...
本次测试成功:
@Test
public void testFoo() {
assertEquals("bar", System.getProperty("foo"));
assertEquals("baz", System.getProperty("bar"));
}
(来自编辑的运行)。
看这里:https://code.visualstudio.com/docs/java/java-testing
..完全不同于:
launch.json
它在哪里(也):
...,
"vmArgs": "-Dfoo=bar"
...
..但在 vs 代码基础结构中完全不同。
参见:
- https://code.visualstudio.com/docs/java/java-debugging
- https://code.visualstudio.com/docs/editor/debugging#_launch-configurations
- https://code.visualstudio.com/docs/java/java-debugging#_configuration-options
另请参阅:
tasks.json
(对于“构建任务”(也可以是测试)):
https://code.visualstudio.com/docs/editor/tasks.
我有一个包含大量单元测试的 Java 项目。在 Visual Studio 代码中,我可以 运行 来自“测试”选项卡的所有测试。然而,有几个失败了,因为我需要为它们提供一些必需的 VM 参数以正确 运行 。我们使用 Maven 作为构建系统。
我知道提供 VM args 的语法,但我找不到 JUnit 测试的启动配置。我只是自动生成了一个 launch.json
,但它没有 Junit 配置。然而,VS Code 清楚地知道如何启动单元测试,因为当我告诉它这样做时(从测试窗格),它 运行s 它们(即使是那些出错的)。
这个答案(Visual Studio Code launch.json file for JUnit?)表明我可以直接右键单击单元测试来提供选项,但我得到的是:
- 运行 测试
- 调试测试
- 去测试
- 隐藏测试
自动生成的 launch.json 非常基础。它生成的两个配置有点没用,因为它是一个库,而不是一个可执行程序。
{
"version": "0.2.0",
"configurations": [
{
"type": "java",
"name": "Launch Current File",
"request": "launch",
"mainClass": "${file}"
},
{
"type": "java",
"name": "Launch RunObject",
"request": "launch",
"mainClass": "com.ourcompany.RunObject",
"projectName": "OurCommon"
}
]
}
在哪里设置单元测试的虚拟机参数?
对于 Java 测试
(运行 来自小编,)我们可以用“java.test.config”!
有了这个 settings.json
:
{
"java.test.config": {
"vmArgs": ["-Dfoo=bar", "-Dbar=baz"]
},
...
本次测试成功:
@Test
public void testFoo() {
assertEquals("bar", System.getProperty("foo"));
assertEquals("baz", System.getProperty("bar"));
}
(来自编辑的运行)。
看这里:https://code.visualstudio.com/docs/java/java-testing
..完全不同于:
launch.json
它在哪里(也):
...,
"vmArgs": "-Dfoo=bar"
...
..但在 vs 代码基础结构中完全不同。
参见:
- https://code.visualstudio.com/docs/java/java-debugging
- https://code.visualstudio.com/docs/editor/debugging#_launch-configurations
- https://code.visualstudio.com/docs/java/java-debugging#_configuration-options
另请参阅:
tasks.json
(对于“构建任务”(也可以是测试)): https://code.visualstudio.com/docs/editor/tasks.