当前位置: 首页 > 知识库问答 >
问题:

如何修复Linux中的“usr/bin/googlechrome不再运行,所以ChromeDriver假设chrome已经崩溃”错误?[副本]

瞿宏儒
2023-03-14

我正在尝试在AmazonLinux上设置一个jenkins服务器来托管我的自动化框架,其中包含Selenium-webDrive(3.142.0)和ruby(2.3.7)。如果我尝试使用我的脚本调用chrome驱动程序,它会说,

“Selenium::WebDriver::Error::UnknownError:未知错误:Chrome无法启动:异常退出(未知错误:DevToolsActivePort文件不存在)(从Chrome位置/usr/bin/google Chrome启动的进程不再运行,因此ChromeDriver假设Chrome已崩溃。)(驱动程序信息:chromedriver=74.0.3729.6(255758ECCF3D24491B8A1317AA76E1CE10D57E9参考/分支头/3729@{29}),平台=Linux 4.14.104-95.84。amzn2.x86\u 64 x86\u 64)”。

我已将chromedriver放在“/var/lib/jenkins/driver/chromedriver”下,并在中设置了相同的路径。bashrc并为其创建了一个符号链接到“/usr/bin/googlechrome”。下面是我正在使用的机器的详细信息:

    NAME="Amazon Linux"
    VERSION="2"
    ID="amzn"
    ID_LIKE="centos rhel fedora"
    VERSION_ID="2"
    PRETTY_NAME="Amazon Linux 2"
    ANSI_COLOR="0;33"
    CPE_NAME="cpe:2.3:o:amazon:amazon_linux:2"
    HOME_URL="https://amazonlinux.com/"```

require 'selenium-webdriver'
options = Selenium::WebDriver::Chrome::Options.new
options.add_argument("--disable-dev-shm-usage");
options.add_argument('--no-sandbox')
driver = Selenium::WebDriver.for :chrome, options: options



>Expected result: Browser should be invoked.
>Actual result: 
Exits with the error "The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed."

共有1个答案

南门英飙
2023-03-14

默认位置未安装Chrome。ChromeDriver check for Chrome安装在linux系统的默认位置。如果您在非标准位置使用Chrome,则需要覆盖Chrome二进制位置。

caps = Selenium::WebDriver::Remote::Capabilities.chrome("chromeOptions" => {"binary" => "Actual Path"})
 类似资料: