JUnitを使用してSelenium2Webdriverテストを実装しようとしています。SeleniumHQ.orgとWebのドキュメントは、Selenium RCとWebdriverの間を行き来しているように見えるため、混乱を招きます。さらに、私のJavaはそれほど強力ではありません。数年前に受講しましたが、あまり使用していません。ヘッドレスCIサーバーからJUnitテストを実行し、Webdriverを使用してリモートクライアントシステムでFirefoxを実行したいと考えています。
収集したものから、次のコードを使用して、ローカルシステムでFirefoxのWebドライバー制御のインスタンスを開くことができます。私がテストしているWebサイトには信頼できないSSL/TLS証明書があるため、Firefoxドライバーに信頼できない証明書を受け入れるように指示する必要があります。これはローカルでうまく機能します:
FirefoxProfile profile = new FirefoxProfile();
profile.setAcceptUntrustedCertificates(true); // NOTE: this is the default behavior
RemoteWebDriver driver = new FirefoxDriver(profile);
Selenium selenium = new WebDriverBackedSelenium(driver, baseurl);
しかし、Webdriverを使用してリモートシステムでこれを行う方法がわかりません。2つのアプローチは完全に互換性がないようです。上記のコードは、Webdriverをリモートで使用するために使用している次のコードにはまったく適合しません。
Selenium selenium = new DefaultSelenium(host, port, browser, baseurl);
selenium.start();
今、私はリモートテストシステムでカスタムFirefoxプロファイルを操作するのに何時間も費やしました。2012年の夏に動作しましたが、最近のOSとブラウザの更新後、動作を停止しました。Firefoxドライバープロファイルを作成し、setAcceptUntrustedCertificates(true)を呼び出す方がはるかに良いようです。Webdriverを使用して、リモートシステム上のブラウザーでテストを実行し、ブラウザーに信頼できないSSL / TLS証明書を無視させることは可能ですか?