Selenium Java プログラムを使用してフレームを見つけることができます。次のコードは正常に実行されます。
public static void TestCase() throws IOException, InterruptedException{
WebDriver driver = new FirefoxDriver();
driver.manage().window().maximize();
driver.get("website");
driver.findElement(By.xpath("//*[@id='username']")).sendKeys(userName);
driver.findElement(By.xpath("//*[@id='password']")).sendKeys("password");
driver.findElement(By.xpath("//*[@id='session_link']")).click();
driver.findElement(By.xpath("//*[@id='app_236']/a")).click(); //Click a link on the page
driver.switchTo().frame("iframe100-100"); //Switch to a frame within the new page
driver.findElement(By.xpath("//*[@id='yui-gen0']/li[2]/div")).click(); //Click element within the frame
}
しかし、Cucumber Junit maven プロジェクトを使用して同じコードを実行すると、プログラムはフレームを見つけることができません。
@Given("^I log into website$")
public void log_in()
{
WebDriver driver = new FirefoxDriver();
driver.manage().window().maximize();
driver.get("website");
driver.findElement(By.xpath("//*[@id='username']")).sendKeys(userName);
driver.findElement(By.xpath("//*[@id='password']")).sendKeys("password");
driver.findElement(By.xpath("//*[@id='session_link']")).click();
}
@When("^I select the link from homepage$")
public void select_link() throws InterruptedException
{
driver.findElement(By.xpath("//*[@id='app_236']/a")).click();
}
@Then("^I should see something$")
public void click_element_within_frame()
{
driver.switchTo().frame("iframe100-100"); //Switch to a frame within the new page
driver.findElement(By.xpath("//*[@id='yui-gen0']/li[2]/div")).click(); //Click element within the frame
}
エラーメッセージ :
31morg.openqa.selenium.NoSuchFrameException: フレームが見つかりません: iframe100-100
助言がありますか ?