複数の行を含む Excel を作成しました。各行はテスト ケースに対応しています。Excel には、「フラグ」列を含む約 22 の列 (パラメーター) があります。
データプロバイダーが、Excel 列に値「Y」を持つ列のみを返すようにします。ユースケースは、クライアントが特定のテストケースを実行したい場合に、Y または N にフラグを立てるだけでよいということです。Selenium を使用した TestNG でこれを達成するにはどうすればよいですか?
私の同僚は、次のコードを使用してこれを達成するのを手伝ってくれましたが、これは私の新しいコード構造では機能しません。
@DataProvider(name = "Order")
public Object[][] menu()
{
Object[][] data = UtilLibrary.getData("Order");
int intColCount = UtilLibrary.datatable.getColumnCount("Order");
int j = 0;
int arrRowCount=0;
for (int i = 0; i < data.length; i++) {
if((data[i][intColCount-1]).equals("Y"))
{
arrRowCount++;
}
}
j=0;
Object[][] retData = new Object[arrRowCount][intColCount];
for (int i = 0; i < data.length; i++)
{
if ((data[i][intColCount-1]).equals("Y")) {
retData[j] = data[i]; j++; }
}
return retData;
}
上記のコードは、Excel で flag='Y' を持つレコードのみを Dataprovider に送信します。ただし、テストスクリプトにすべての自動化ステップを持つ単一の @Test メソッドがある場合にのみ機能していましたが、現在は、この同じ Dataprovider (Order) を渡した同じステップをシミュレートする複数の @Test メソッドがあります。
誰かが同様のコードを使用してこれを達成したか、または TestNG に Excel のフィルタリングされた行を Dataprovider に送信する特定の機能があるかどうか教えてください