2016-09-16 58 views
0

我有一個在jenkins中運行的maven作業。這個maven項目運行包含測試用例的soap項目。這個Maven項目的pom.xml中配置爲Jenkin停止建立單元測試第一次失敗

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
<modelVersion>4.0.0</modelVersion> 
<groupId>src.main.resources</groupId> 
<artifactId>soapui-maven2-plugin</artifactId> 
<packaging>jar</packaging> 
<version>1.0-SNAPSHOT</version> 
<name>Maven 2 soapUI Sample</name> 
<url>http://maven.apache.org</url> 
<pluginRepositories> 
    <pluginRepository> 
     <id>smartbear-sweden-plugin-repository</id> 
    <url>http://www.soapui.org/repository/maven2/</url> 
    </pluginRepository> 
</pluginRepositories> 
<build> 
    <plugins> 
     <plugin> 
      <groupId>com.github.redfish4ktc.soapui</groupId> 
      <artifactId>maven-soapui-extension-plugin</artifactId> 
      <version>4.6.4.2</version> 
      <configuration> 
       <runnerType>OSS</runnerType> 
       <projectFile>Dev-Offline-soapui-project.xml</projectFile> 
       <junitReport>true</junitReport> 
       <outputFolder>${project.build.directory}/tatunka-reports</outputFolder> 
       <testSuite>SmokeTestSuite</testSuite> 
       <testSuiteProperties> 
        <properties> 
         <property>serviceEndpoint=${serviceEndpoint}</property> 
        </properties> 
       </testSuiteProperties> 
       <skipAfterFailureCount>1</skipAfterFailureCount> 
      </configuration> 
      <executions> 
       <execution> 
       <configuration> 
       <junitReport>true</junitReport> 
       </configuration> 
        <phase>test</phase> 
        <goals> 
         <goal>test</goal> 
        </goals> 
       </execution> 
      </executions> 
      <dependencies> 
       <dependency> 
        <groupId>com.smartbear.soapui</groupId> 
        <artifactId>soapui-maven-plugin</artifactId> 
        <version>5.1.0</version> 
       </dependency> 
      </dependencies> 
     </plugin> 
    </plugins> 
</build> 

而在詹金斯目標和選項給出

test -DserviceEndpoint=http://localhost:8080/DAMService/solutionid -DskipTests=true 

我要的是詹金斯停止運行,如果任何其他測試用例測試用例失敗。 例如,我有9個測試用例,第4個測試用例失敗,其餘5個測試用例不應執行。

我試着給

<skipAfterFailureCount>1</skipAfterFailureCount> 

,但沒有結果。 甚至嘗試給 -DskipTests=true選項作爲構建論證。 而且還嘗試了目標verify。但是無法阻止測試用例的運行。 請讓我知道是否需要更多信息。 對此的任何幫助將非常感激。

謝謝。

+0

不熟悉的插件,但短暫的搜索不顯示我的名字命名'skipAfterFailureCount'什麼配置的關鍵。而且,這是soap ui插件的行爲,而不是jenkin提供的這種行爲(如果任何測試失敗,請跳過其餘的測試)。如果他們沒有提供(我認爲這是快速檢查後的情況),你可以做的不多 –

+0

@AdrianShum感謝你的回覆和你的時間。試圖努力尋找解決方案。保持手指交叉..我希望有人有一個想法實現這一點。 –

+0

我強烈懷疑它是否由soapui插件提供(甚至在soapui中)。如果不是,我認爲你永遠無法通過等待獲得解決方案。考慮提出一個問題到插件/ soapui,或自己修復它:) –

回答

0

添加<testFailureIgnore>true</testFailureIgnore>下插件配置,並嘗試

+0

嘗試了你的建議,但它仍在運行其他測試用例。感謝您的建議。 –

+0

哦。然後將其更改爲false.' false' – Ramu