質問

WebDriverを使用してロケーション認識Webサイトをテストしようとしていますが、プログラム的に(WebDriver API呼び出しを使用して)Webアプリケーションの場所にある場所へのリンクをクリックしたときにポップアップする「共有位置」ボタンをクリックします。

これはブラウザのプロンプトであり、DOM要素またはJavaScriptポップアップ要素ではないようです。

役に立ちましたか?

解決

誰かが知っていることに興味がある場合...他の回答で提案されているように、DOM(つまり、Webドキュメントの一部ではない)にないため、WebDriverを使用してそのボタンをクリックすることはできません。ただし、Firefoxプロファイルを作成して地球を操作したり、「共有場所」設定をFirefoxの「許可」に変更できます。

詳細については、次のリンクを参照してください。http://selenium.polteq.com/nl/change-geolocation-in-firefox-with-selenium-webdriver/

他のヒント

Firefoxを手動で1回開始し、Seleniumに使用するプロファイルを選択する必要があります。

タイプ about:permissions アドレス行で。ホストの名前を見つけて選択します share location : "allow".

それで全部です。これで、Seleniumテストのケースでは、DOMにない恐ろしいブラウザダイアログが表示されません。

Xpathでロケートを試すことができます //input[@value="Share Location"] それは <input type=button>, 、またはおそらくあなたは試すことができます //button[contains(., "Share Location")] それがaの場合 <button> エレメント

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top