【问题标题】:OpenQA.Selenium.WebDriverException : unknown error: Chrome failed to start: exited abnormally on CodeFreshOpenQA.Selenium.WebDriverException:未知错误:Chrome 无法启动:在 CodeFresh 上异常退出
【发布时间】:2021-04-19 06:54:08
【问题描述】:

在 CodeFresh 中运行冒烟测试时,我们偶尔会收到此错误

[xUnit.net 00:02:41.43]       OpenQA.Selenium.WebDriverException : unknown error: Chrome failed to start: exited abnormally.
[xUnit.net 00:02:41.43]         (unknown error: DevToolsActivePort file doesn't exist)
[xUnit.net 00:02:41.43]         (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.)
[xUnit.net 00:02:41.43]       Stack Trace:
[xUnit.net 00:02:41.43]            at OpenQA.Selenium.Remote.RemoteWebDriver.UnpackAndThrowOnError(Response errorResponse)
[xUnit.net 00:02:41.43]            at OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute, Dictionary`2 parameters)
[xUnit.net 00:02:41.43]            at OpenQA.Selenium.Remote.RemoteWebDriver.StartSession(ICapabilities desiredCapabilities)
[xUnit.net 00:02:41.43]            at OpenQA.Selenium.Remote.RemoteWebDriver..ctor(ICommandExecutor commandExecutor, ICapabilities desiredCapabilities)
[xUnit.net 00:02:41.43]            at OpenQA.Selenium.Chrome.ChromeDriver..ctor(ChromeDriverService service, ChromeOptions options, TimeSpan commandTimeout)
[xUnit.net 00:02:41.43]            at OpenQA.Selenium.Chrome.ChromeDriver..ctor(ChromeOptions options)
[xUnit.net 00:02:41.43]         /src/Features/Helpers/Hooks.cs(32,0): at Live_Automation.Features.Helpers.Hooks.BeforeScenario()
[xUnit.net 00:02:41.43]            at TechTalk.SpecFlow.Bindings.BindingInvoker.InvokeBinding(IBinding binding, IContextManager contextManager, Object[] arguments, ITestTracer testTracer, TimeSpan& duration)
[xUnit.net 00:02:41.43]            at TechTalk.SpecFlow.Infrastructure.TestExecutionEngine.InvokeHook(IBindingInvoker invoker, IHookBinding hookBinding, HookType hookType)
[xUnit.net 00:02:41.43]            at TechTalk.SpecFlow.Infrastructure.TestExecutionEngine.FireEvents(HookType hookType)
[xUnit.net 00:02:41.43]            at TechTalk.SpecFlow.Infrastructure.TestExecutionEngine.OnScenarioStart()
[xUnit.net 00:02:41.43]            at TechTalk.SpecFlow.TestRunner.OnScenarioStart()
[xUnit.net 00:02:41.43]            at Live_Automation.Features.SmokeTestsOnLiveFeature.ScenarioStart()

这在 10 次测试中平均发生 1 次,通常只是以下一种情况

Test Run Failed.
Total tests: 52
     Passed: 51
     Failed: 1

失败的测试是随机的,这可能发生在一天中的时间。 测试套件围绕 Visual Studio/C#/Selenium/Xunit 构建

在更罕见的情况下我们会得到这个

[xUnit.net 00:03:26.88]       OpenQA.Selenium.WebDriverException : unknown error: session deleted because of page crash
[xUnit.net 00:03:26.88]       from unknown error: cannot determine loading status
[xUnit.net 00:03:26.88]       from tab crashed
[xUnit.net 00:03:26.88]         (Session info: headless chrome=87.0.4280.141)
[xUnit.net 00:03:26.88]       Stack Trace:
[xUnit.net 00:03:26.88]            at OpenQA.Selenium.Remote.RemoteWebDriver.UnpackAndThrowOnError(Response errorResponse)
[xUnit.net 00:03:26.88]            at OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute, Dictionary`2 parameters)
[xUnit.net 00:03:26.88]            at OpenQA.Selenium.Remote.RemoteWebDriver.set_Url(String value)
[xUnit.net 00:03:26.88]            at OpenQA.Selenium.Remote.RemoteNavigator.GoToUrl(String url)
[xUnit.net 00:03:26.88]         /src/Features/Pages/HomePage.cs(61,0): at Live_Automation.Features.Pages.HomePage.Visit()
[xUnit.net 00:03:26.88]            at TechTalk.SpecFlow.Bindings.BindingInvoker.InvokeBinding(IBinding binding, IContextManager contextManager, Object[] arguments, ITestTracer testTracer, TimeSpan& duration)
[xUnit.net 00:03:26.88]            at TechTalk.SpecFlow.Infrastructure.TestExecutionEngine.ExecuteStepMatch(BindingMatch match, Object[] arguments)
[xUnit.net 00:03:26.88]            at TechTalk.SpecFlow.Infrastructure.TestExecutionEngine.ExecuteStep(IContextManager contextManager, StepInstance stepInstance)
[xUnit.net 00:03:26.88]            at TechTalk.SpecFlow.Infrastructure.TestExecutionEngine.OnAfterLastStep()
[xUnit.net 00:03:26.88]            at TechTalk.SpecFlow.TestRunner.CollectScenarioErrors()
[xUnit.net 00:03:26.88]            at Live_Automation.Features.SmokeTestsOnLiveFeature.ScenarioCleanup()
[xUnit.net 00:03:26.88]         /src/Features/SmokeTests.feature(80,0): at Live_Automation.Features.SmokeTestsOnLiveFeature.TestFooterOptions(String footer, String url, String[] exampleTags)

现在,当这种情况发生时,从这一点开始的所有场景都将失败 有没有人对造成这种情况的原因有任何想法。我不认为这是测试。

提前致谢

凯夫

【问题讨论】:

    标签: c# selenium google-chrome selenium-chromedriver codefresh


    【解决方案1】:

    这意味着您在某处使用 send_keys(filepath) 并且该文件不存在于该路径中

    看看你是否在某个地方使用这个

    【讨论】:

    • 嗨,不是这样。在测试运行期间,我们不会尝试上传文件
    • @Kev 它是否显示了发生这种情况的代码行?尝试更新 chrome 和 chromedriver
    • 之前的场景中有什么请添加该代码,因为其中存在异常
    • Live_Automation.Features.Helpers.Hooks.BeforeScenario()
    【解决方案2】:

    我已经解决了这个问题。自从添加了这一行之后就没有问题了。

    options.AddArguments("--disable-dev-shm-usage");
    

    【讨论】:

      猜你喜欢
      • 2014-04-20
      • 2016-10-08
      • 2019-01-14
      • 2017-09-07
      • 1970-01-01
      • 1970-01-01
      • 2023-01-07
      • 2020-05-03
      相关资源
      最近更新 更多