私はCucumber-SeleniumとExcelをデータファイルとして使用しています。私の質問は、Excel上のデータに基づいて複数の時間に機能ファイルを実行する方法です。たとえば、私はExcelで10行のデータを持っていて、それを1行ずつ実行したいと思っていました。データの最初の行の後に次の行に移動して実行します。Excelファイルをデータテーブルとして使用するCucumber Selenium
フィーチャーファイル: シナリオ:ログイン
Given I open the browser and access this URL
When I enter the "<Username>" and "<Password>"
Then I am able to login
ステップ定義: パブリッククラスログイン{
WebDriver driver = null;
String url;
@Given("^I open the browser and access this URL$")
public void navigateToUrl() throws Throwable{
System.setProperty("webdriver.chrome.driver", "");
driver = new ChromeDriver();
url = DataTable.getDataTableValue(0, 2, 2);
driver.get(url);
driver.manage().window().maximize();
}
@When("^I enter the \"([^\"]*)\" and \"([^\"]*)\"$")
public void enterCredentials(String userName, String password) throws Throwable {
userName = DataTable.getDataTableValue(0, 1, 1);
password = DataTable.getDataTableValue(0, 1, 2);
driver.findElement(By.id("username")).sendKeys(userName);
driver.findElement(By.id("password")).sendKeys(password);
}
@Then("^I am able to login$")
public void clickLoginButton() throws Throwable {
driver.findElement(By.id("Login")).click();
}
}
ここである私のデータテーブル(Excelファイル)
| ID |ユーザー名|パスワード
| ID1 | username1 | password1
| ID2 |ユーザー名2 |パスワード2
| ID3 |ユーザー名|パスワード3
| ID4 |ユーザー名4 | password4
私はまた、最近セレンを学ぼうとしています。 「Apache POI」APIを検索する必要があります。私はあなたの問題を解決すると思う。 – limonik
あなたのお返事ありがとうございます。私はすでにデータテーブルとしてExcelを使用していますが、Cucumber-Seleniumの反復方法はわかりません。 基本的には、フィーチャファイルでExample Tableを使用するのではなく、何千ものデータを処理しているのでExcelを使いたいと思っています。 – Sachi
@Sachi私はそれが可能ではないと思います。あなたが達成したいことがデータ駆動型のアプローチか、データを異なるExcelファイルに抽象化したいのかどうかはわかりません。後でApache POIで行うことができますが、まずは不可能です。 –