Chrome驱动程序在linux中不加考虑地运行selenium测试时抛出“org.openqa.selenium.remote.SessionNotFoundException”?

时间:2016-10-04 12:45:24

标签: selenium selenium-webdriver webdriver selenium-chromedriver xvfb

环境:Centos7,Chromedriver2.24,chrome-browser-stable版本2.53,selenium版本2.53.1和xvfb

当运行与8个并发线程并行的测试时,会发现会话未找到异常..

铬设置:

                DesiredCapabilities capabilities = DesiredCapabilities.chrome();
                capabilities.setCapability("chrome.switches", Arrays.asList(
                        "--disable-logging", "--silent", "--log-level 3"));
                capabilities.setCapability("chrome.logfile", "NUL");
                capabilities.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
                capabilities.setCapability(ChromeOptions.CAPABILITY, options);
                System.setProperty("webdriver.chrome.driver",
                        "servers/chromedriver-local");
                driver = new ChromeDriver(capabilities);

任何帮助都非常感谢!!

1 个答案:

答案 0 :(得分:0)

这就解决了我的问题:

Simpy mount -v /dev/shm:/dev/shm

或者,更长一点,创造一个大shm

以特权模式启动:docker run --privileged 修复小/ dev / shm大小

docker exec $id sudo umount /dev/shm
docker exec $id sudo mount -t tmpfs -o rw,nosuid,nodev,noexec,relatime,size=512M tmpfs /dev/shm

然而,避免特权模式会很好。

(参考文献:github.com/elgalu/docker-selenium/issues/20)