1 回答

TA貢獻(xiàn)2051條經(jīng)驗(yàn) 獲得超10個(gè)贊
下面看看是如何一步步實(shí)現(xiàn)的:
1、在TestNG的XML中設(shè)置參數(shù)。下 面的截圖中,我設(shè)了兩個(gè)參數(shù),一個(gè)是testEnv,另一個(gè)是browser。參數(shù)的值可以直接寫死,也可以由外部傳入。參數(shù)有不同的作用域,如直接寫 在<suite>下,那他的作用域就是整個(gè)suite。如寫在<test>下,那他的作用域就是所在的test。
2、在測(cè)試代碼中使用參數(shù)。
如下所示,我是在beforeClass 方法中,根據(jù)傳入的兩個(gè)參數(shù)來(lái)初使化瀏覽器和load 相應(yīng)環(huán)境的測(cè)試數(shù)據(jù)。
3、修改pom.xml文件
4、Jenkins job 傳入?yún)?shù)并執(zhí)行mvn命令
在job中,我設(shè)置了兩個(gè)參數(shù),并給出了默認(rèn)值。執(zhí)行job時(shí),可直接使用該默認(rèn)值或根據(jù)實(shí)際情況把參數(shù)的值改成自己想要的。
下面是Maven命令:
mvn clean test -DtestEnv=%testEnv% -DxmlFileName=%xmlFileName%
執(zhí)行這條命令時(shí),我們把testEvn及xmlFileName兩個(gè)參數(shù)的值傳入了pom.xml文件,接著,Maven在調(diào)用TestNG時(shí)又會(huì)把參數(shù)傳過(guò)去。經(jīng)過(guò)如上四個(gè)步驟,我們可以通過(guò)參數(shù)傳遞,靈活的指定測(cè)試環(huán)境、測(cè)試范圍等,而不需要對(duì)測(cè)試腳本做任何改動(dòng)。
這邊要講下xmlFileName這個(gè)參數(shù)。因?yàn)榭紤]到要執(zhí)行不同的用例集,比如只針對(duì)某一模塊進(jìn)行自動(dòng)化測(cè)試,或?qū)?xiàng)目所有的功能進(jìn)行全面回歸,我們可以創(chuàng)建不同的TestNG XML文件,然后在執(zhí)行mvn命令時(shí)指定你想要跑的那個(gè)XML文件。
該方法適用于所有使用Jenkins + Maven + TestNG的測(cè)試場(chǎng)景。
添加回答
舉報(bào)