testNG參數化

據說testNG比junit更好用,記錄下java

環境:springboot2.0+testNG6.8+maven+myeclipsespring

一 安裝springboot

(1)m'yeclipse安裝testNg包,下載testNg包,拷貝到myeclpse目錄下eclipse

(2)pom.xml導入testNg的依賴包maven

 

二,基本功能ide

(1)一些標註@BeforeClass,BeforeSuite,BeforeMethod,@Test(enabled=false)的執行順序和junit基本一致的原理測試

(2)經過配置文件suite.xml執行suite,這裏有個groups分組,包括類分組和方法分組,來靈活制定運行哪些測試case,也和本來預計的沒啥區別ui

三,參數化spa

比較感興趣額是參數化,2中經常使用的傳參方式code

1)suite.xml配置文件配置parameters,直接執行suite.xml

注意:這種方法必須執行xml文件,而不是java文件,不然報錯

Parameter 'username' is required by @Test on method pamameterUse1 but has not been marked @Optional or defined

java代碼

    @Parameters({ "username","password" })
    @Test
    public void pamameterUse1(String username,String password){
        System.out.println(username+password);
    }

suite.xml配置文件

<?xml version="1.0" encoding="UTF-8"?>
<suite name="Suite">
      <test name="myparam">
            <parameter name="username" value="mili"/>
            <parameter name="password" value="123455"/>
            <classes>              
                <class name="com.summit.suite.Parameter"></class>
            </classes>
      </test>
</suite>

執行suite.xml結果

mili123455

===============================================
(2)@DaraProvider註解實現傳參,可直接執行java文件

 

    @DataProvider(name="milidata")
    public Object[][] providerData(){
        return new Object[][]{{"wangli","33333"},{"lixiao","44444"}};
        
    }
    @Test(dataProvider = "milidata")
    public void testDataProvider(String name,String pwd){
        System.out.println(name+pwd);
    }

wangli33333
lixiao44444
PASSED: testDataProvider("wangli", "33333")
PASSED: testDataProvider("lixiao", "44444")

===============================================

(3)平常中須要把參數和腳本分離開,testNg怎麼作呢?

相關文章
相關標籤/搜索