我正在尝试使用标签进行 junit 测试,但我的所有单元测试无论如何都由 vscode 运行。我尝试阅读 java 扩展的测试运行程序的文档,这让我将以下内容添加到我的 settings.json 中:
"java.test.Config": {
"name": "default",
"workingDirectory": "${workspaceFolder}",
"testKind": "junit",
"filters.tags": [
"group2",
]
}
即使将其添加到我的 settings.json 中,vscode 仍然运行所有测试
@Test
@Tag("group1")
void test1() {
assertEquals(1, 1);
}
@Test
@Tag("group2")
void test2() {
assertEquals(2, 2);
}
@Test
@Tag("group2")
void test3() {
assertEquals(3, 3);
}
查看wiki页面我认为
filters
应该是一个对象,就像这样:
"java.test.config": {
"name": "default",
"workingDirectory": "${workspaceFolder}",
"testKind": "junit",
"filters": {
"tags": [
"group2"
]
}
}
如果它对某人有帮助,我发现只有当我添加额外的虚拟标签时,我才可以使用 @Tag("integration") 禁用标签:
"filters":{"tags": ["xxxx", "!integration"]},
但不包括:
"filters":{"tags": ["!integration"]},