接口測試進階3-1數據驅動測試
阿新 • • 發佈:2018-08-13
ann 測試 system org ide vid imp 京東 測試數據
數據驅動
相同的測試腳本使用不用的測試數據執行,並完全分離了測試數據和測試行為。這樣的模式成為數據驅動
testNG實現數據驅動的兩個關鍵註解
@DataProvider
@Parameters
在當前類中指定數據源
#java package DateDriver812; import org.testng.annotations.DataProvider; import org.testng.annotations.Test; public class Lesson1Data { @DataProvider(name = "provider") public Object[][] createData(){ /** * 提供數據源 */ return new Object[][]{ {"阿裏","馬雲"}, {"騰訊","馬化騰"} }; } @Test(dataProvider="provider") public void testDataProvider(String company,String people){ /** * 接收數據源,每一行作為一組數據,每次接收一組執行一次測試 */ System.out.println("company:"+company+"\t"+"people:"+people); } }
company:阿裏 people:馬雲
company:騰訊 people:馬化騰
數據源在其他類中
#java package DateDriver812; import org.testng.annotations.DataProvider; import org.testng.annotations.Test; public class Lesson1Data { @Test(dataProviderClass = testdata.TestData.class,dataProvider = "test1") /** * 指定類:packageName.className.class(class不能少) * 指定dataProvider */ public void testDataProviderClass(String company,String people){ System.out.println("company:"+company+"\t"+"people:"+people); } } //數據源 package testdata; import org.testng.annotations.DataProvider; public class TestData { @DataProvider(name = "test1") public static Object[][] createDdata(){ return new Object[][]{ {"網易","丁磊"}, {"京東","劉強東"} }; } }
company:網易 people:丁磊
company:京東 people:劉強東
接口測試進階3-1數據驅動測試