基本的にFirefoxとChromeの両方でテストケースを実行するubuntuサーバーでSeleniumテストケースを実行しています。 Firefoxが起動し、テストケースは正常に実行されますが、chromeは例外をスローします:
*****以下はスタックトレースのスニペットです:*****
ポート21549でChromeDriver(v2.8.240825)を起動します
システム実装がないため、PACサポートが無効になっています
IntegrationTest.AdminUserelementscheckのテストに失敗しました:
org.openqa.Selenium.WebDriverException:chrome到達不能(ドライバー情報:chromedriver = 2.8.240825、platform = Linux 2.6.32-431.el6.x86_64 x86_64)(警告:サーバーはスタックトレース情報を提供しません)[エラー]コマンドの継続時間またはタイムアウト:20.83秒
こんにちは以下は私のコードの小さなスニペットです:
public class IntegrationTest {
private static final String configFile="test.properties";
private final String FIREFOX="firefox";
private final String CHROME="chrome";
private final String PHANTOMJS="phantomjs";
private final String BROWSERNAME="browser";
private static Properties props = new Properties();
public WebDriver webDriver;
private static Configuration additionalConfigurations;
@BeforeClass
public static void setUp() throws IOException, SQLException{
props.load(IntegrationTest.class.getResourceAsStream("/" + configFile));
}
@test
public void AdminUserelementscheck() throws SQLException, IOException {
String[] browsers = props.getProperty(BROWSERNAME).split(",");
System.out.println("Number of browsers specified in conf:"+props.getProperty(BROWSERNAME));
for(String browser:browsers){
System.out.println("Browser currently processing:"+browser);
if(browser.equalsIgnoreCase(FIREFOX))
webDriver = new FirefoxDriver();
else if(browser.equalsIgnoreCase(CHROME))
webDriver = new ChromeDriver();
else
webDriver = new PhantomJSDriver();
running(testServer(3333,fakeApplication()),webDriver, new Callback<TestBrowser>() {
********* LOGIN AND ASSERTION STATMENTS*******************
browser.quit()
}
});
}
これは、Chromeも実行するためにUNIXコンテナを利用しているためです。これをdocker内で実行する場合は、dockerrunコマンドを渡します。
-特権
それ以外の場合は、Chrome with
--no-サンドボックス
私は同様の問題を引き起こしました。 Seleniumテストをローカルで実行していますが、「webdriver exception chrome notreachable」エラーが突然表示されました。
問題は、通常のchromeブラウザにすでにタブが多すぎることでした。イライラした後、いくつかのタブを閉じて、突然機能しました。タブに一定の制限があるかどうかはわかりません。 、しかし誰かが同じ問題に遭遇した場合は、それを試してみてください。
chromeドライバーが古いようです。以下から最新の日付をダウンロードしてみてください。新しいエラーが発生した場合は、報告してください。
http://chromedriver.storage.googleapis.com/index.html?path=2.14/
また、PATH環境変数にchromedriverへのパスがあることを確認してください。