mef*_*efi 35 java eclipse testing unit-testing gradle
当我尝试通过gradle测试任务运行JUnit测试时,我遇到了麻烦.当我使用Run As - > JUnit测试直接在eclipse中运行测试时,一切正常,测试成功.但是通过测试任务,测试总是失败.编码我的资源txt文件可能有些麻烦.所以我想在使用gradle启动测试时启用调试
在build.gradle中,我的测试任务现在看起来像:
test {
    tasks.withType(Compile) {
        options.encoding = 'UTF-8'
    }
}
那么我应该怎样做才能启用调试?我在Eclipse中从Gradle面板运行gradle任务,而不是从控制台运行.谢谢!
Ser*_*gey 82
要调试测试,应使用以下参数: --debug-jvm
例如:gradle test --debug-jvm
Gradle将在运行测试之前暂停执行,并等待端口5005上的调试器连接.
要仅执行特定测试,请参阅https://docs.gradle.org/current/userguide/java_testing.html#simple_name_pattern
我在 4.6 (gradle) 上,当我的 build.gradle 文件中有这个时,我可以调试我的测试:
test {
    debug true
}
链接 - https://docs.gradle.org/4.6/userguide/userguide_single.html#sec:java_test
把它放在这里--debug-jvm对我来说不起作用,我能够通过设置:
 org.gradle.daemon=true
 org.gradle.jvmargs=... -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=10999
在
 ~/.gradle/gradle.properties
但是当我为项目的eclipse调试器连接时,没有设置编译/触发器的断点...我通过调试器连接,我可以在Debug视图中看到动作,每当我从命令行运行时gradle test,就像新线程一样启动/停止,但无法触发断点,现在尝试解决此问题...
Fyi停止deamon运行 gradle --stop
以上作为参考,这适用于触发测试中的断点,我关闭了deamon,因为我无法让它正常工作:
使用本文中的说明:http://blogs.steeplesoft.com/posts/2013/gradle-tip-attaching-a-debugger.html
test {        
    if (System.getProperty('DEBUG', 'false') == 'true') {
        jvmArgs '-Xdebug',
            '-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=10999'
    }
}
通过执行 gradle test -DDEBUG=true
使用时,上述解决方案无效org.junit.platform.gradle.plugin.
相反,它应该被替换为:
junitPlatformTest {        
    if (System.getProperty('DEBUG', 'false') == 'true') {
        jvmArgs '-Xdebug',
            '-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=10999'
    }
}
| 归档时间: | 
 | 
| 查看次数: | 38334 次 | 
| 最近记录: |