ロボットフレームワークはIExplorerをサポートしていますか、それともFirefoxとChromeのみをサポートしていますか?(はいの場合、それを構成する方法は?)
ありがとう!
ロボットフレームワークはIExplorerをサポートしていますか、それともFirefoxとChromeのみをサポートしていますか?(はいの場合、それを構成する方法は?)
ありがとう!
Robot Framework自体は特定のブラウザーをサポートしていないため、セレンとセレン2をそれぞれ使用するSeleniumLibraryまたはSelenium2Libraryのいずれかを参照していると思います。これらのブラウザサポートはseleniumhqで十分に文書化されており、そこには多くのサポートがあります。Selenium2Libraryは継続的なサポートを受けるため、新しいプロジェクトではSelenium2Libraryを使用することをお勧めします。
ここIEdriver exe
からダウンロードして 、このexeファイルをPythonインストールディレクトリのScriptsフォルダーに配置します。たとえば、私の場合はです。C:\Python27\Scripts
RideがIEを起動します。
ブラウザのドライバの互換性を確認してください。
ブラウザ ${WEBAPPURL} ${BROWSER}
を開くは、ブラウザを開くためのキーワードです。
firefox/ff
代わりに使用できます${BROWSER}
googlechrome/gc/chrome
代わりに使用できます${BROWSER}
internetexplorer/ie
代わりに
使用できます${BROWSER}
Firefoxの場合、ドライバーは必要ありませんが、IEとChromeの場合はドライバーをインストールする必要があります
インストーラーと情報は、Chromeの場合はこちら、IEの場合はこちらにあります。
あなたはすでにIEドライバを知っているかもしれません。それとは別に、Pythonバージョン-Selenium2バージョン-IEドライバーバージョン-IEブラウザーバージョンの互換性も確認する必要があります。
@theheadofabroomの回答に加えて、InternetExplorerはRobotFrameworkではうまく機能しないことを付け加えておきます。テストはIEではさまざまな理由で機能しない可能性がありますが、 FireFoxとChromeでは問題なく機能する可能性がありますが、最も一般的なのはタイミングです。IEは非常に遅いため、Robot Frameworkが次の要素をクリックすると、ページでその要素を検索しますが、まだ読み込まれていません。IE用のSeleniumWebドライバーが正しくインストールされていて、Robot Frameworkコードが正しく記述されている限り、いくつか追加することをお勧めします。Sleep
アクション間のキーワードにより、コードの速度が低下し、RobotFrameworkがページを検索する前にクリックする要素が読み込まれる可能性が高くなります。これは、 Chrome用に作成していて、 FirefoxまたはIEのいずれかに送信する場合に特に当てはまります。
Robotクラスは、ブラウザに関係なくキーボード入力をサポートします。これはjava.awtパッケージのクラスであり、どのブラウザにも固有ではありません。これは、Webページが自動化されているWebブラウザ(スタンドアロンアプリケーション)で操作を実行するための自動化で使用されます
スタンドアロンアプリケーションであるため、Webブラウザで直接操作を実行することはできませんが、キーボードショートカットを使用して間接的に操作を実行できることに注意してください。
たとえば、ブラウザで新しいタブを開きたい場合は、新しいタブCtrl+t
をクリックする代わりに、Robotクラスを使用して押すことができます。プログラムで新しいタブを開くために使用するコード
Webdriver driver = new ChromeDriver(); //FirefoxDriver(), IntrrnetExplorerDriver();
driver.get("......");
//code goes here
//to open a new tab
Robot rob = new Robot();
rob.keyPress(Keys.VK_CTRL);
rob.keyPress(Keys.VK_t);
rob.keyRelease(Keys.VK_CTRL);
rob.keyRelease(Keys.VK_t);
//itetator to switch between the tabs