相关疑难解决方法(0)

无法解析org.eclipse.jdt.annotation.NonNull类型.它是从所需的.class文件间接引用的

当我使用Java 8方法引用双冒号operator(::)和new运算符(例如MyType::new)时,我在Spring of Spring Tool套件(STS)中遇到此错误:

无法解析org.eclipse.jdt.annotation.NonNull类型.它是从所需的.class文件间接引用的

如何摆脱这个错误?

java eclipse java-8 spring-tool-suite method-reference

24
推荐指数
3
解决办法
6041
查看次数

Jacoco Gradle中的最小代码覆盖率阈值

如何在Jacoco Gradle中设置最小代码覆盖率?

如果不满足,我希望构建失败.

gradle jacoco

19
推荐指数
3
解决办法
3万
查看次数

gradle 测试:如何运行一种方法?

如何仅运行测试用例的一种方法以使用 Gradle 进行调试?我试过了:

gradle test -tests example.TestFoo#testMethod1 --debug-jvm
Run Code Online (Sandbox Code Playgroud)

但最终出现以下错误:

No tests found for given includes: example.TestFoo#testMethod1
Run Code Online (Sandbox Code Playgroud)

测试TestFoo类有testMethod1(),testMethod2()等等。

testing gradle

7
推荐指数
1
解决办法
8047
查看次数

如何仅使用 Gradle 和 JUnit 5 运行特定测试?

使用 Gradle 及其 JUnit 4 支持,我可以使用如下--tests选项选择特定测试:

$ ./gradlew test --tests de.mp.BarMT
Run Code Online (Sandbox Code Playgroud)

此选项在使用 JUnit 5 Gradle 任务时无效。test从命令行使用任务时,它会被静默忽略。真正的工作是由junitPlatformTest反正完成的,它不支持该选项:

$ ./gradlew clean junitPlatformTest --tests de.mp.BarMT
…
Problem configuring task :junitPlatformTest from command line.
> Unknown command-line option '--tests'.
Run Code Online (Sandbox Code Playgroud)

JUnit 5 插件是否支持选择特定测试?

gradle junit5

5
推荐指数
1
解决办法
1969
查看次数

如何使用 Gradle 运行多个命名测试?

我知道怎么说

gradle test --tests mypackage.MyTest
Run Code Online (Sandbox Code Playgroud)

但如何指定多个呢?

gradle test --tests mypackage.MyTest,mypackage.model.ModelTest,BasicTests
Run Code Online (Sandbox Code Playgroud)

这似乎只是随机运行其中一项测试。

gradle test --tests mypackage.MyTest mypackage.model.ModelTest BasicTests
Run Code Online (Sandbox Code Playgroud)

这告诉我

在根项目“myproject”中找不到任务“mypackage.model.ModelTest”。

我阅读了很多手册和教程(以及一些 SO 帖子),但发现没有明确提及答案。但我看到有人传递 --tests "somepackage.*" 作为参数,所以我认为空格周围的引号可能会有所帮助。

gradle test --tests "mypackage.MyTest mypackage.model.ModelTest BasicTests"
Run Code Online (Sandbox Code Playgroud)

这不会很快失败,但不幸的是只运行列表中的第一个测试。

所以我想我只是被“--tests”中的复数形式误导了,并且没有办法真正给出一个列表,对吗?

java junit gradle

5
推荐指数
2
解决办法
4488
查看次数

如何创建 Gradle 任务以在 Spring 中仅运行特定的测试

我有一个 Spring 项目,我在其中编写了一些单元和集成测试。现在我想创建自定义任务来运行所有单元测试、所有集成测试和一个运行两者的任务。但是我该怎么做呢?

spring unit-testing task gradle gradle-task

3
推荐指数
1
解决办法
3369
查看次数

如何使用命令行在 Gradle 上运行空手道测试

我正在查看空手道文档: https://github.com/intuit/karate#command-line

我的文件如下:

跑步者类别:

import org.junit.runner.RunWith;
import com.intuit.karate.junit4.Karate;
import cucumber.api.CucumberOptions;

@RunWith(Karate.class)
@CucumberOptions(features = "classpath:feature/country.feature")
public class APITest {}
Run Code Online (Sandbox Code Playgroud)

将其放入我的 build.gradle 中:

test {
    // pull cucumber options into the cucumber jvm
    systemProperty "cucumber.options", System.properties.getProperty("cucumber.options")
    // pull karate options into the jvm
    systemProperty "karate.env", System.properties.getProperty("karate.env")
    // ensure tests are always run
    outputs.upToDateWhen { false }
}
Run Code Online (Sandbox Code Playgroud)

我正在尝试像这样运行 gradle:

./gradlew test -Dtest=APITest
Run Code Online (Sandbox Code Playgroud)

但我得到这样的回应:

Rafaels-MacBook-Pro:TestProject rafaelpaz$ ./gradlew test -Dtest=APITest
:compileJava UP-TO-DATE
:processResources UP-TO-DATE
:classes UP-TO-DATE
:compileTestJava
:processTestResources UP-TO-DATE
:testClasses
:test
Run Code Online (Sandbox Code Playgroud)

但是,我看不到我的测试是否通过。我究竟做错了什么?

摇篮版本:2.14.1

java gradle gradlew build.gradle karate

2
推荐指数
1
解决办法
8408
查看次数