以下のコードを使用して、CSV ファイルを読み取り、 public void launchWCM1(IBLogonDataCSV data) と呼ばれるテスト対象のメソッドにオブジェクトを渡します。
@DataProvider(name = "regCSVData")
public static Object[][] getCSVData() throws IOException {
CSVReader csvReader = new CSVReader(new FileReader(
"C:\\Projects\\Project\\regdata.csv"));
List<String[]> dataList = csvReader.readAll();
String s = "";
Object[][] data = new Object[dataList.size()][1];
List<IBLogonDataCSV> regList = new ArrayList<IBLogonDataCSV>();
for (String[] strArray : dataList) {
IBLogonDataCSV ibLogonData = new IBLogonDataCSV();
ibLogonData.setURL((strArray[0].trim()));
ibLogonData.setApplicationName((strArray[1].trim()));
ibLogonData.setIBLogonURL(strArray[2].trim());
ibLogonData.setWindowName(strArray[3].trim());
ibLogonData.setSnapshotName(strArray[4].trim());
ibLogonData.setRegister(strArray[5].trim());
ibLogonData.setRegisterURL(strArray[6].trim());
ibLogonData.setDemo(strArray[7].trim());
ibLogonData.setDemoURL(strArray[8].trim());
ibLogonData.setSecurity(strArray[9].trim());
ibLogonData.setSecurityURL(strArray[10].trim());
regList.add(ibLogonData);
}
for (int i = 0; i < data.length; i++) {
for (int j = 0; j < data[i].length; j++) {
data[i][j] = regList.get(i);
System.out.println("In Array" + regList.get(i).URL
+ regList.get(i).ApplicationName);
s = s + regList.get(i).URL;
}
}
csvReader.close();
return data;
}
メソッド public void launchWCM1(IBLogonDataCSV data) が成功または失敗すると、Testng レポートにオブジェクト名が表示されます。これは、文字列値が何であるかを知るのに役立たないか、さらにデバッグするために失敗した URL の名前です。
例:launchWCM1 テスト クラス: com.seleniumtests.test.IBLogonCSV パラメータ: com.seleniumtests.dataobject.IBLogonDataCSV@de1b8a
パラメーターを文字列値として表示するには、次のように簡単に読み取ることができます。