[英]Making Jenkins build fail when Selenium tests fail
我已经设置了Jenkins服务器来运行Selenium测试。 构建脚本是用Ant编写的(在CentOS 6.3上为v 1.7.1),测试在Sauce Labs上运行。 我通过shell执行构建:
ant -buildfile build.xml
问题是当测试失败时,Jenkins认为它是成功的。 我可以通过将haltonfailure
设置为true
来避免这种true
,请参阅:
<junit printsummary="yes" fork="false" haltonfailure="yes">
<classpath refid="run.cp" />
<formatter type="xml" usefile="true" />
<batchtest fork="no" todir="test-output/xml">
<fileset dir="src/">
<exclude name="**/*LocatorUtils*.java"/>
<exclude name="**/*TestBase*.java"/>
<exclude name="**/*TestUtils*.java"/>
<exclude name="**/*Config*.properties"/>
</fileset>
</batchtest>
</junit>
但是,这并不理想,因为Jenkins将在遇到的第一次失败时终止构建。 一旦构建完成后是否可以检查失败,然后将其标记为失败?
在junit
任务上,使用failureproperty
属性。 然后使用unless
属性调用fail
任务。
进一步阅读:
当构建失败时,将创建testng-failed.xml。 你可以在workspace / Test Report / BuildDirectory /中找到这个xml文件
每次都会创建BuildDirectory。 您可以编写一个powershell脚本来检查是否已创建testng-failed.xml。 如果构建成功,则不会创建此文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.