嗨,我已经将我的Selenium脚本与jenkins集成在一起,但是我无法启动chrome浏览器

时间:2019-07-02 06:18:18

标签: java ubuntu jenkins selenium-webdriver selenium-chromedriver

我已经将我的Selenium脚本与jenkins集成在一起,但是我无法启动chrome浏览器,我尝试了几乎所有解决方案,并且在我的机器中有chrome版本75.0.3770.100(正式版本)(64位)和支持75版本的Chrome驱动程序。

在詹金斯,我得到了

  

启动ChromeDriver 75.0.3770.90   (a6dcaf7e3ec6f70a194cc25e8149475c6590e025-refs / branch-heads / 3770 @ {#1003})   在端口21983上仅允许本地连接。请保护端口   由ChromeDriver和相关测试框架使用,以防止   恶意代码。测试运行:7,失败:1,错误:0,跳过:6,时间   经过时间:1.332秒<<<失败! -在TestSuite中   beforeMethod(qa.Vehicle_registration)经过的时间:1.206秒<<<   失败! org.openqa.selenium.WebDriverException:未知错误:   Chrome无法启动:异常退出(未知错误:   DevToolsActivePort文件不存在)(该过程始于   chrome位置/ usr / bin / google-chrome不再运行,因此   ChromeDriver假定Chrome已经崩溃。)内部版本信息:   版本:“ 3.5.3”,修订版:“ a88d25fe6b”,时间:   '2017-08-29T12:42:44.417Z'系统信息:主机:   'administrator-Latitude-3480',ip:'127.0.1.1',操作系统名称:'Linux',   os.arch:'amd64',os.version:'4.15.0-52-generic',java.version:   '1.8.0_11'驱动程序信息:driver.version:ChromeDriver远程   stacktrace:#0 0x55c60975b6e9

我尝试使用下面的代码,但仍然遇到相同的错误。

public class Google{
  WebDriver driver;  

  @BeforeClass
  public void beforeMethod() throws IOException, InterruptedException 
  {
      System.setProperty("webdriver.chrome.driver","/home/ashishtiwari/driver/chromedriver");

      ChromeOptions options = new ChromeOptions();

      options.setExperimentalOption("useAutomationExtension", false);
      options.addArguments("start-maximized"); // open Browser in maximized mode
      options.addArguments("disable-infobars"); // disabling infobars
      options.addArguments("--disable-extensions"); // disabling extensions
      options.addArguments("--disable-gpu"); // applicable to windows os only
      options.addArguments("--disable-dev-shm-usage"); // overcome limited resource problems
      options.addArguments("--no-sandbox"); // Bypass OS security model
      options.addArguments("--headless");
      options.addArguments("--disable-dev-shm-usage");
      driver = new ChromeDriver(options);
      driver.manage().window().maximize();
      driver.manage().deleteAllCookies();
         driver.manage().timeouts().pageLoadTimeout(utill.ashu, TimeUnit.SECONDS);

          driver.manage().timeouts().implicitlyWait(utill.sonam, TimeUnit.SECONDS);
    //http://tmsapp.xbees.in/#/dashboard
          driver.get("https://google.com");
    }
 }

1 个答案:

答案 0 :(得分:0)

  1. 我在 Visual Studio 代码中使用 selenium 启动 chrome 浏览器时遇到了同样的问题。我通过从我的项目中删除 chromedriver.exe 解决了这个问题,因为我创建了很多 Chromedriver.exe 文件。只需检查是否有不止一个 chromedriver .exe 文件在您的项目中。
  2. chromedriver.exe 文件应该在 bin/debug/net5.0/chromedriver.exe 中。
  3. 如果您按照上述步骤操作,则无需为 chrome 驱动程序提供本地路径。