Java 使用spock junit测试和gradle构建系统在控制台上输出单元测试结果
你好, 我正在用Java 使用spock junit测试和gradle构建系统在控制台上输出单元测试结果,java,gradle,spock,Java,Gradle,Spock,你好, 我正在用spock框架使用gradle构建系统进行单元测试 当我运行我的测试gradletest时,我只看到这样一条消息: GNU Emacs 24.3.1 Gradle 1.12 spock-core.0.7 然后我必须检查xml文件,看看抛出了什么异常 是否有任何选项可以让我在控制台输出中看到异常? 例如,我想将一些打印消息打印到控制台输出: * What went wrong: Execution failed for task ':test'. > There were
spock框架
使用gradle构建
系统进行单元测试
当我运行我的测试gradletest
时,我只看到这样一条消息:
GNU Emacs 24.3.1
Gradle 1.12
spock-core.0.7
然后我必须检查xml文件,看看抛出了什么异常
是否有任何选项可以让我在控制台输出中看到异常?
例如,我想将一些打印消息打印到控制台输出:
* What went wrong:
Execution failed for task ':test'.
> There were failing tests. See the report at: file:///home/projs/gradleTest/build/reports/tests/index.html
我的Gradle生成文件:
catch(FileNotFoundException ex) {
System.out.println("Exception " + ex.toString());
}
catch(IOException ex) {
System.out.println("Exception " + ex.toString());
}
catch(Exception ex) {
System.out.println("Exception " + ex.toString());
}
我的斯波克单元测试:
apply plugin: 'java'
apply plugin: 'application'
apply plugin: 'groovy'
repositories {
mavenLocal()
mavenCentral()
}
dependencies {
compile "com.googlecode.json-simple:json-simple:1.1.1"
testCompile "org.codehaus.groovy:groovy:2.3.3"
testCompile "org.spockframework:spock-core:0.7-groovy-2.0"
}
非常感谢您,请尝试gradle--stacktrace测试。我相信这将显示产生测试失败/错误的堆栈跟踪
您还可以添加--debug
选项以获取更多信息
当我运行gradle测试时,我只看到这样一条消息:[……]
默认情况下,您还将看到(在输出的后面):
- 哪些测试方法失败
- 异常类型
- 发生异常的源文件和行号
Test#testLogging
。例如:
import spock.lang.Specification;
class SnapClientTest extends Specification {
def "Request from web services"() {
given:
SnapClient snapclient = new SnapClient()
expect:
snapclient.makeRequest() == 0
}
}
有关更多详细信息,请检查中的Test
然后我必须检查xml文件,看看抛出了什么异常
通常,您会检查HTML报告,而不是XML文件。在Mac上,您只需按住CMD键并双击
后的文件URL即可打开报告。请参见位于以下位置的报告:
。一些*nix终端提供类似的功能。请参见.Hmm中的Test\testLogging
,我无法获取exceptionFormat“full”
来执行任何操作。最近有没有改变?是的,这对于无法访问测试报告的信号量构建尤其有用。谢谢在Gradle构建语言参考中,也检查。
tasks.withType(Test) {
testLogging {
exceptionFormat "full"
}
}