0

Selenium Webdriver を使用して、Salesforce アプリケーションの機能 TC を自動化しています。テスト シナリオ: - ケース ページで [検索] アイコンをクリックすると、標準の Salesforce 検索ポップアップが開きます。検索フィールドに特定の文字列を入力し、[Go] ボタンをクリックする必要があります。

[検索] ボタンをクリックすることはできますが、スクリプトはポップアップのどのフィールドも識別できません。

Alert()、getWindowHandle、および iterator 関数を使用して、ドライバーがポップアップ ウィンドウで動作しているかどうかを確認しました。はい、そうです..ポップアップは作業ウィンドウです。これは、ブラウザ ウィンドウの Java ID を使用して確認できました。しかし、それでもフィールドを特定できません。

同様の問題と解決策に直面している方がいらっしゃいましたらお知らせください。

私の作業中のサンドボックスにアクセスしたい場合はお知らせください。それを管理できるでしょう。

ありがとう、まんじゅう

4

3 に答える 3

1

ボブの回答に加えて、検索によって返されたリンクを使用するには、「resultsFrame」に切り替える必要もあります。兄弟フレームに切り替えるには、最初に次を使用してフレームセットの親に移動する必要があることに注意してください。

driver.switchTo().defaultContent();

(フレームセットのガイダンスはこちら: http://darrellgrainer.blogspot.co.uk/2012/04/frames-and-webdriver.html )

于 2013-04-09T13:36:30.520 に答える
1

問題は、ポップアップ ウィンドウ内の要素がフレーム内にあることだと思います。新しいポップアップ ウィンドウに切り替えた後、次を使用してこれらの要素にアクセスする前に、最初にフレームに切り替える必要があります。

WebElement frameLocator = driver.findElement(By.id("searchFrame")); 
driver.switchTo.frame(frameLocator);
于 2013-02-25T20:08:34.737 に答える