2012-06-14 128 views
1

我試圖創建混合​​框架,我將被傳遞的對象名稱和相應的值從一個Excel工作表的對象名稱。這是我想要做的參數設置數據和用TestNG和數據提供者

FieldName Type Value1 Value2 Value3 
FName  Edit John  Smith Carla  
LName  Edit Fellow Carson Black  
Submit  Link Click Click Click  
  • 字段名稱:包含XPath或ID的識別對象
  • 類型:包含的類型,如文本框或列表框等,讓我可以使用IF循環相應地處理每種類型的對象。
  • 值1..3 ..:不同的價值觀我想運行agianst測試(對象)。

我怎麼能去這樣做使用數據提供者,因爲在理想情況下,第一兩列需要,而我使用不同的數據值是恆定的。另外,數據提供者似乎正在讀數組。對不起,如果這是一個基本的問題,我是testNG的新手,並且聽過優秀的內容並希望看看。

回答

0

數據提供商返回任何數據爲你的作品,那麼你只需要想想你如何把這個電子表格到您的測試方法會接受對象。例如,如果您希望您的測試每列只輸入一個參數:

@Test(dataProvider = "dp") 
public void f(String fieldName, String type, String value1, String value2, String value3) { 
    // test 
} 

@DataProvider 
public Object[][] dp() { 
    // read the spreadsheet 
    return new Object[][] { 
    new Object[] { fieldName, type, value1, value2, value3 }, // row 1 
    new Object[] { fieldName, type, value1, value2, value3 }, // row 2 
    } 
} 
+0

感謝您的回覆。我想它的工作方式是這樣的'@測試(數據提供程序=「DP」)公共無效F(字符串字段名,字符串類型,字符串值1)'根據以上的quesstion提到的陣列上,會發生什麼是FNAME會被識別爲一個文本框,John將被輸入。 。數據值1的點擊完成之後。數據值2 i.e.FName - 史密斯,LName的 - 卡森和提交 - 按此執行,而字段名仍然要FNAME,LName的和提交。希望我是清楚:(。 – SteelBird

+0

你可能是清楚,但它是一個有點難以閱讀的評論代碼:-)你能和你的問題發送電子郵件TestNG的用戶列表?我們可以繼續在那裏進行討論。 –

相關問題