2015-11-30 32 views
0

我正在使用SBT插件在Jenkins上构建SBT项目,迄今为止工作良好。我执行的目标是compile testQuick。这会导致Jenkins仅运行影响自上次Git Push以来更改的事件的测试。但是,当我仅在我的构建文件中重新组织或碰撞版本号时,这会导致不运行测试,并且构建后操作“发布JUnit测试结果”失败。詹金斯SBT插件:如何让没有测试运行视为成功?

有没有一种方法可以将没有测试作为成功运行?

回答

0

不是一个真正的解决方案,而是一个临时的解决办法,直到有人想出了一个更好的主意:

我创建了一个“伪测试结果文件” dummyresult.xml它看起来像这样:

<?xml version="1.0" encoding="UTF-8"?> 
<testsuites> 
    <testsuite name="DummyResultSoBuildDoesNotFail" errors="0" tests="0" failures="0" time="0" timestamp="2013-05-24T10:23:58" /> 
    <testsuite name="DummyResultSoBuildDoesNotFail.constructor" errors="0" skipped="1" tests="1" failures="0" time="0.006" timestamp="2013-05-24T10:23:58"> 
     <properties> 
     <property name="java.vendor" value="Sun Microsystems Inc." /> 
     <property name="compiler.debug" value="on" /> 
     <property name="project.jdk.classpath" value="jdk.classpath.1.6" /> 
     </properties> 
     <testcase classname="DummyResultSoBuildDoesNotFail.constructor" name="Dummy result, needed so result collection does not fail" time="0"> 
     <skipped /> 
     </testcase> 
    </testsuite> 
</testsuites> 

然后我添加后生成步骤,这是“执行shell”,并执行以下操作:

mkdir -p target/test-reports && cp ~/dummyresult.xml target/test-reports 

现在,即使没有运行测试,詹金斯拿起一个跳过“达姆我的测试“,很高兴。