2017-01-13 88 views
0

我有一個項目有Grid + Selenium + Java + Testng + maven。 有沒有一種方法來設置,即將運行測試的人他將能夠通過他自己的配置來覆蓋默認配置?如何通過詹金斯配置覆蓋自動化配置

這裏是一個I`M運行我的testng.xml文件:

<suite name="TestSuite" parallel="tests"> 


    <test name="firefox test"> 
     <parameters> 
      <parameter name="platform" value="MAC" /> 
      <parameter name="browser" value="firefox" /> 
      <parameter name="version" value="50.1.0" /> 
      <parameter name="url" value="google.com" /> 
     </parameters> 
     <classes> 
      <class name="com.ParallelTest.CreateRandomProfileTest"/> 
      <class name="com.ParallelTest.LogInTest"> 

      </class> 
     </classes> 
    </test> 




</suite> 

例如,如果有人想在Win運行鍼對Chrome的5次測試?如何在不改變代碼的情況下傳遞它,以及它應該被覆蓋的位置。有人可以給我一個資源鏈接,我可以檢查它嗎?謝謝!

+0

似乎是一個有效的問題。不必關閉! – vins

回答

1

它可以通過Jenkins的文件參數插件輕鬆完成。

https://wiki.jenkins-ci.org/display/JENKINS/Parameterized+Build

即,讓我們假設這個默認的文件夾結構

data 
pageobjects 
tests 
suite.xml 

現在的用戶上傳自己的suite.xml版本的工作區和運行工作。

Jenkins將從源代碼管理/ github中提取項目,並將suite.xml替換爲用戶上傳的項目並運行該項目。


你也可以嘗試這種方式。

Pass variable from jenkins to testng.xml