是否有可能使用不同的Excel表格進行不同的測試方法共享相同的dataProvider TestNG中不同的Excel工作表的相同數據提供程序
回答
如果帶有@DataProvider批註的方法接受java.lang.reflect.Method作爲第一個參數,則TestNG將傳遞當前正在執行的測試方法作爲參數。例如
@Test(dataprovider="dp1")
public void test1(String str){
//test here
}
@DataProvider(name="dp1")
public Object [][](Method testName){
// testName will be the calling method
// testName.getName(); == "test1"
return new Object[][]{new Object[]{"Cedric"}};
}
利用這一點,可以創建用於每個測試方法的片材,並將其命名一樣的方法名稱。然後您的數據提供者可以查找您的工作表,然後返回所需的許多參數。
當然,只要有你的數據提供程序讀取所有的Excel電子表格,將它們組合成一個對象[ ] []並返回該對象。
但我想運行例如我的數據提供者是所述測試而採取表名稱: - @dataProvider(名稱= 「DP」) 公共對象[] [] createData1()拋出異常 { \t Object [] [] retObjArr = datacreate.getTableArray(path,tablename,sheetname); return(retObjArr); } 和我有兩個測試方法 @Test(數據提供程序= 「DP」) 公共無效testAddUser(字符串username,字符串位置) { // }和 公共無效testDeleteUser(INT userid,字符串用戶名) { // } 因此,我希望數據在運行測試時被採用不同的Excel表格。 請讓我知道我該如何做到這一點。 – TestUser 2010-08-18 08:52:16
讓你的數據提供者返回一個{三個參數}的數組,你的每個測試方法需要三個參數,它只使用它需要的兩個參數。 – 2010-08-18 22:02:12
仍然無法做到。 我想它在調用測試方法之前需要表單名稱,並且我在測試方法內提供表單名稱。 是否有任何方式我可以寫數據提供者,如: - 公共對象[] [] createData1(字符串SHEETNAME)拋出異常 { \t對象[] [] = retObjArr datacreate.getTableArray(路徑,表名, SHEETNAME); return(retObjArr); } 和測試方法是這樣的: - @Test(數據提供程序= 「DP」, 「工作表Sheet1」) 公共無效testAddUser(INT userid,字符串用戶名) – TestUser 2010-08-19 04:28:39
- 1. 針對相同數據的不同過濾數據提供程序?
- 2. 如何合併兩個相同的Excel工作表中的不同數據
- 3. Flex - Tab View多個DataGrids和相同的數據提供程序
- 4. 不同的工作表,相同的值
- 5. 在EXCEL中調用不同工作表的相同單元格
- 6. 圖表和數據網格的相同數據提供者
- 7. 不同數據庫提供者之間的同步表
- 8. 如何使用相同的端口提供不同的node.js應用程序?
- 9. IIS7在不同的目錄下提供相同的應用程序
- 10. 從Excel中的不同工作表中複製數據
- 11. 如何將datagrid數據導出到Excel的不同工作表?
- 12. VBA爲不同格式的數據獲取新工作表Excel
- 13. 將數據從gridview導出到不同的excel工作表
- 14. Sqlite數據提供程序.net錯誤:不同的SQL響應命令提示符與SQLite ADO.NET提供程序
- 15. 2 Excel工作簿顯示相同計算的不同結果?
- 16. 匹配數據不同的工作簿和不同的順序
- 17. 將Excel中的數據保存到工作簿的不同工作表中
- 18. 2表單提交相同的數據
- 19. 循環代碼以將不同的工作表數據提取到不同的工作表
- 20. 相同的shebang不工作
- 21. 導入Excel工作表以訪問具有不同列名稱但數據類型相同的表格。
- 22. 根據程序狀態給JButtons提供不同的功能?
- 23. 相同的查詢工作不同
- 24. 我可以在不同的應用程序中爲不同的模型提供相同的名稱嗎?
- 25. 蟒大熊貓讀取的各種數據幀從相同的Excel工作表
- 26. 如何通過從不同的Excel工作表具有不同的數據的數據到測試中硒
- 27. 寫在兩個不同的工作表上,不工作excel 2007
- 28. iOS的同步框架提供程序
- 29. SQL Azure的同步提供程序
- 30. 輪廓提供程序不再工作
我得到了這個工作。 – TestUser 2010-09-09 12:52:17