2016-12-03 7 views
0

Selenium WebDriver、Java、Junit、Cucumber BDDを使用して、1つの航空会社Webアプリケーションを自動化しようとしています。出発日の一方通行を選択し、座席を選択してから支払いページに進むという単純なシナリオを作成することができました。私はすべてのテストステップを支払いページに達するまで書くことができました。 Seleniumはすべてのページのすべての要素に対してアクションを実行することに成功しましたが、支払いページの任意の要素に対してアクションを実行することに失敗しました。暗黙の待機と明示的な待機を試みましたが、使用しませんでした。初めにSeleniumがPaymentページでアクションを実行できたときと、複数回実行しようとしたときにテストを実行したが、 "NoSuchElementException"のためテストが失敗した。要素のいくつかは、支払いページに配置するために、以下のとおりです。Selenium WebDriverがページ上の要素を見つけることができません

Select choice = new Select(driver.findElement(By.xpath("//select[contains(@id,'title')]"))); 
choice.selectByVisibleText("Mr"); 
driver.findElement(By.xpath("//div[contains(@class,'payment-passenger-first-name')]"))/input)).sendKeys("John"); 

私が使用implicitwaitは次のとおりです。私が使用

driver.manage().timeouts().implicitlyWait(10,TimeUnit.SECONDS); 

explicitWaitは次のとおりです。

WebElement element = new WebDriverWait(driver,20).until(ExpectedConditions.presenceOfElementLocated(By.xpath("elementlocation"))); 

セレンは発見されていません支払いページのすべての要素は上記のものだけではありません。私は問題が何であるか正確には分かりません。 誰かが私にこの問題を解決するための最良のソリューションを提供できますか?

+0

支払いページの場合、セキュリティのために探している要素がIFRAME内にある可能性があります。あなたはIFRAMEをチェックしましたか? – JeffC

+0

いいえすべての要素がIFRAMEに含まれていない、支払いページ全体を確認しました。 – sravan

+0

[ask]をお読みください。試したコードやエラーメッセージなどの実行結果を提供してください。ページや関連するHTMLへのリンクも提供してください。 – JeffC

答えて

1

要素がiframeタグの内部に書き込まれている場合、最初にフレームに切り替えるまで、要素が見つからないことがあります。 フレームを切り替えるコマンド(driver.switchto().frame(Framename))

+0

要素はIFRAMEに含まれていません – sravan

関連する問題