-
-
Notifications
You must be signed in to change notification settings - Fork 8.6k
Description
I had previously written a small extension for automatic authentication through Selenium.
This was a small extension that was assembled in-memory in Java code (zipping into a byte array), with the resulting bytes being Base-64 encoded and passed into ChromeOptions.addEncodedExtensions():
options.addEncodedExtensions(ChromeAutoAuthExtension.getEncodedExtensionString());
This no longer works using:
Chrome 62 (running in Docker, on docker-selenium)
ChromeDriver 2.33.506092
Selenium-Server 3.7.1 (also tried 3.8.1)
Opening chrome://extensions inside Chrome does not show the extension. Only the Selenium extension itself is listed.
The same code previously worked in older versions, with the extension being correctly loaded and appearing in the extension list.
I know it worked three months ago (24th August 2017) with Selenium-Server 3.5.1 and whichever version of Chrome was current at that time (should have been ChromeDriver 2.30 and Chrome 60.)
I tested both with and without the .crx header in the base64-encoded string (it used to work without the header.)
The same extension will load as expected if I instead write that same byte array out to a .crx file on disk and then load it through ChromeOptions.addExtensions() instead
options.addExtensions(ChromeAutoAuthExtension.getExtensionTemporaryFile());
Using this method, the extension is loaded and appears in the list as expected.