Chrome failed to start: crashed. (unknown error: DevToolsActivePort file doesn't exist) after upgrade to chrome 93.0.4577.63

Viewed 1421

This issue started after upgrade to 93.0.4577.63

I tried going back to chromedriver v 92.0.4515.107 but encountered the same issue.

I tried several fixes from similar posts (much older posts) like using --no-sandbox and other flags but no luck. Anyone else seeing this ?

org.openqa.selenium.WebDriverException: unknown error: Chrome failed to start: crashed.
  (unknown error: DevToolsActivePort file doesn't exist)
  (The process started from chrome location C:\Program Files (x86)\Google\Chrome\Application\chrome.exe is no longer running, so ChromeDriver is assuming that Chrome has crashed.)
Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
System info: host: '', ip: '192.168.0.146', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '11.0.8'
Driver info: driver.version: ECWebDriver
remote stacktrace: Backtrace:
    Ordinal0 [0x00672A33+2501171]
    Ordinal0 [0x0060D1C1+2085313]
    Ordinal0 [0x00511FA8+1056680]
    Ordinal0 [0x0052D07C+1167484]
    Ordinal0 [0x0052997F+1153407]
    Ordinal0 [0x0055999F+1350047]
    Ordinal0 [0x0055960A+1349130]
    Ordinal0 [0x0055551B+1332507]
    Ordinal0 [0x00531D74+1187188]
    Ordinal0 [0x00532BD9+1190873]
    GetHandleVerifier [0x007EEFE6+1504438]
    GetHandleVerifier [0x0089DDA5+2220661]
    GetHandleVerifier [0x006F5589+481881]
    GetHandleVerifier [0x006F4639+477961]
    Ordinal0 [0x006128BD+2107581]
    Ordinal0 [0x00616728+2123560]
    Ordinal0 [0x00616862+2123874]
    Ordinal0 [0x0061FA81+2161281]
    BaseThreadInitThunk [0x75BCFA29+25]
    RtlGetAppContainerNamedObjectPath [0x77427A7E+286]
    RtlGetAppContainerNamedObjectPath [0x77427A4E+238]

    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
    at org.openqa.selenium.remote.W3CHandshakeResponse.lambda$errorHandler$0(W3CHandshakeResponse.java:62)
    at org.openqa.selenium.remote.HandshakeResponse.lambda$getResponseFunction$0(HandshakeResponse.java:30)
    at org.openqa.selenium.remote.ProtocolHandshake.lambda$createSession$0(ProtocolHandshake.java:126)
    at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
    at java.base/java.util.Spliterators$ArraySpliterator.tryAdvance(Spliterators.java:958)
    at java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:127)
    at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:502)
    at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:488)
    at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
    at java.base/java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:150)
    at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
    at java.base/java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:543)
    at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:128)
    at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:74)
    at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:136)
    at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:83)
    at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:552)
    at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:213)
    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:131)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:181)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:168)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:157) ```
2 Answers

For the Chrome Web driver to function it needs to be compatible with the version of Chrome installed on the machine that you are executing.

Please go to https://chromedriver.chromium.org/downloads and download the ChromeDriver version compatible with the Chrome installation on your machine. For the version, you mentioned it will be ChromeDriver 93.0.4577.15.

Guess in the wild, because that was our problem:

We started with some options, then converted them via capabilities = options.to_capabilities() and then we initialized Chrome only with those capabilities. But somehow you now have to also provide the original options to take effect.

So instead of

driver = Chrome(desired_capabilities=capabilities)

we now have to do

driver = Chrome(options=options, desired_capabilities=capabilities)
Related