运行硒脚本时出现错误“ OpenQA.Selenium.WebDriverException:无效的会话ID”

时间:2019-06-03 10:00:36

标签: c# selenium selenium-webdriver selenium-chromedriver

下面是我的脚本,运行脚本传递后,但我看到并非所有方法都已执行,并且控制台中有错误。

控制台错误:

  (Driver info: chromedriver=74.0.3729.6 (255758eccf3d244491b8a1317aa76e1ce10d57e9-refs/branch-heads/3729@{#29}),platform=Windows NT 10.0.17134 x86_64)
   at OpenQA.Selenium.Remote.RemoteWebDriver.UnpackAndThrowOnError(Response errorResponse)
   at OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute, Dictionary`2 parameters)
   at OpenQA.Selenium.Remote.RemoteWebDriver.FindElement(String mechanism, String value)
   at OpenQA.Selenium.Remote.RemoteWebDriver.FindElementById(String id)
   at OpenQA.Selenium.By.<>c__DisplayClass16_0.<Id>b__0(ISearchContext context)
   at OpenQA.Selenium.By.FindElement(ISearchContext context)
   at OpenQA.Selenium.Remote.RemoteWebDriver.FindElement(By by)
   at Selenium_testing.SearchTCOData.SearchtCOData() in C:\Users\dvemula\source\repos\Selenium testing\Selenium testing\SearchTCOData.cs:line 23
   at Selenium_testing.Login.Main(String[] args) in C:\Users\dvemula\source\repos\Selenium testing\Selenium testing\login.cs:line 24

代码:

using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using System;
using System.Threading;
class LoginTCO
{
    static IWebDriver driver = new ChromeDriver();
    static void main()
    {
        driver.Navigate().GoToUrl("https://tlmapps.test.slb.com/TCO/index.html#/");
        Thread.Sleep(10000);
        Click();
        Console.WriteLine("clicked");
        driver.Quit();
    }
    private static void Click()
    {
        driver.FindElement(By.CssSelector(".glyphicon-th-list")).Click();
        driver.FindElement(By.CssSelector(".glyphicon-wrench")).Click();
        driver.FindElement(By.CssSelector(".glyphicon-paste")).Click();
        driver.FindElement(By.CssSelector(".idicon")).Click();
    }
}

1 个答案:

答案 0 :(得分:0)

此问题可能有两个原因。

1)在不使用WebDriverManager并以某种方式更新chromedriver.exe二进制文件(支持chrome浏览器版本74,但操作系统为72)的情况下。这种情况下,您需要更新与浏览器版本兼容的二进制文件。

2)使用WebDriverManager时,它将自动下载浏览器二进制文件。它尝试下载最新的chromedriver二进制文件,该二进制文件可能与您的chrome浏览器安装版本不兼容,让我说72。如果是这样,在这种情况下,我们必须下载与您的浏览器版本72兼容的chromedriver二进制文件。为此,请针对此问题参考以下内容。

Issue with Latest Chrome Driver Version 74