我们如何在Jenkins中安装chrome(通过openshift 4)

问题描述 投票:0回答:1

我想在jenkins上运行一个自动化测试脚本(用java编写),它具有以下规范:系统信息:os.name:'Linux',os.arch:'amd64',os.version:'5.14.0- 284.64.1.el9_2.x86_64', java.version: '11.0.18'

首先我尝试从此链接下载linux chromedriver:https://googlechromelabs.github.io/chrome-for-testing/#stable

我在我的 Drivers.java 文件中做了以下更改

package com.airbus.iam.l10.datacheckerautomationtesting.factory;

import org.openqa.selenium.PageLoadStrategy;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
import org.openqa.selenium.edge.EdgeDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

public class Drivers {
    static WebDriver driver=null;

    public  static void initializeBrowser(String browserName){

        System.setProperty("webdriver.chrome.driver", "chromedriver");
        ChromeOptions options = new ChromeOptions();
//        options.addArguments("--headless");
        options.addArguments("--window-size=1920,1080");
        options.addArguments("--start-maximized");
        options.addArguments("--incognito");

        options.setPageLoadStrategy(PageLoadStrategy.NORMAL);

        if(browserName.equals("chrome")){
                driver = new ChromeDriver(options);

            }
            else if (browserName.equals("edge")){
                driver = new EdgeDriver();
            }
            else if (browserName.equals("firefox")){
                driver = new FirefoxDriver();
            }
    }

    public static WebDriver getDriver(){
        return driver;
    }
}

但我仍然收到此错误:

org.openqa.selenium.remote.NoSuchDriverException: chromedriver located at chromedriver, cannot be executed
For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors/driver_location/
Build info: version: '4.11.0', revision: '040bc5406b'
System info: os.name: 'Linux', os.arch: 'amd64', os.version: '5.14.0-284.64.1.el9_2.x86_64', java.version: '11.0.18'
Driver info: driver.version: ChromeDriver

然后我尝试使用这篇文章使用 openshift4 终端下载 chrome:How can I run selenium on Linux?

当我尝试安装 chrome 二进制文件时,它显示在终端中找不到 sudo 命令。

对于 chrome 驱动程序,需要很长时间并且显示:正在连接到 dl.google.com (dl.google.com)|142.250.201.174|:443... 已连接。 终端连接已关闭。

请提出解决此问题的方法。

java linux selenium-webdriver redhat openshift-4
1个回答
0
投票
System.setProperty("webdriver.chrome.driver", "chromedriver");

如果您使用的是selenium

v4.6.0
或更高版本,则无需再手动下载和设置chrome驱动程序路径。这意味着您不需要上面的代码。删掉就好了

Selenium 的新工具称为 Selenium Manager 将执行自动驱动程序管理。

参考资料:

© www.soinside.com 2019 - 2024. All rights reserved.