How can I downgrade to Chrome 42.0.2311.90? - google-chrome

Google Chrome on my machine recently got updated to v44.
I'm working with Selenium WebDriver on Chrome and as soon as I updated Chrome, all my tests went dead. I use Chromedriver v2.16. My partner's PC has Chrome v42.0.2311.90 and Chromedriver v2.16. And tests run fine on his machine. Now, based on this I'm pretty sure the problem is probably not with Chromedriver.
So, how can I downgrade to Chrome 42.0.2311.90?
I've tried using an offline installer from here:
Google Chrome Alternate Offline Installer
But this always gives me the latest version to install i.e. v44.
The release that I need can be found here:
Google Chrome v42.0.2311.90 Stable Channel Update

Uninstall your current chrome version.
Remove all Chrome data for current version from: C:\Users\username\AppData\Local\Google\Chrome
Download your particular version from chrome_installer.
Disable chrome updates using instructions given on this link.

Following steps help you to install your desired google chrome version :
1 - Uninstall your current google chrome version.
2 - Download your desired google chrome version from here : Google Chrome Download
3 - Restart PC once so if any registry or temp file stored of previous google chrome then it will get refresh.
4 - Install your downloaded google chrome. And then turn off automatic chrome update.

I struggled with this same problem on Mac, trying to downgrade, and stay downgraded from Chrome 53 to 52 due to a serious bug affecting webaudio.
None of the other recommendation appear to apply any more (or on Mac OS X at least). The app attempts to upgrade itself and there doesn't be a way to configure that in a "Chrome-friendly" way.
Eventually I resorted to force...
Close and uninstall Chrome
Edit your /etc/hosts file to prevent update checks from working by overriding the DNS entry:
0.0.0.0 tools.google.com
Find and download an old release. This is left as an exercise, this was actually hard and fraught with fear of bad binaries. I was able to cross-reference MD5s from one site that didn't have downloads with another that had downloads.
Install and run the older version
Important: Check the "About" page, and point and laugh at Chrome's attempts to check in.

This is how you can use an older chrome version "in general":
Uninstall your current chrome
Install the chrome version you desire
DO NOT open chrome!! after installation
Instead disable auto-updates like here or here
Only then may you work with your desired chrome browser version
As for how to get a specific older version:
You need to google, search forums or try sites like this. It's just "grunt work" to find the version you are looking for. If you're extremely unlucky, the very version you need might even not be around any more.

If you are running on a windows machine you can leverage the package manager chocolatey, this is how we I'm doing it from Jenkins, we call a powershell that uninstalls a previous version and install a specific one: From a powershell ide script window, you need to have installed the modules for chocolatey that is a small price to pay for a lot of benefit:
choco install googlechrome --version 62.0.3202.94 -y
Then to prevent Chrome to self update I am performing this steps:
1. Verify Chrome's current version.
(Get-Item (Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\chrome.exe').'(Default)').VersionInfo
Install the version I'm aiming for:
choco install googlechrome --version 62.0.3202.94 -y
You can look for available versions here:
https://chocolatey.org/packages/GoogleChrome
(Find Version History Section)
Kill GoogleCrashHandler.exe in any of its variants 32 or 64 bits or both.
Delete the Directories
C:\Program Files (x86)\Google\Update and
C:\Program Files (x86)\Google\CrashReporter
You will loose the ability to auto update (which is the whole purpose right) and
you will loose the ability to send crash reports and piggy back on that executable to update against your will whenever google deems convenient.
5.Disable Chrome Services

Related

Packaging google canary in SCCM

for our system software center in SCCM we'd like to offer google canary and make them required software for some deployments. Has someone succesfully succeeded in doing so?
We have the chromestup.exe currently as our install file and deployed the packet in our store but when we click install the install says it's done but canary isn't installed.
We use the registery BLBeacon/state = 1 as detection method. Which is filled in if you install canary manually.
Thanks in advance,
Wouter
Please can you show me the command you are using to install the product? Have you tested this outside of SCCM to confirm it works? As far as I'm aware, Google Chrome Canary does not support unattended installations by default.
I gave up and used the Google Beta found on the Enterprise page - it should basically be the same version but packaged as an MSI making it easy for SCCM delivery.

Why doesn't ChromeDriver require Chrome or Chromium?

ChromeDriver is working on my system even though I don't have Chrome or Chromium installed. Based on the name, I thought it was like a "car driver" where you still need a car to get going. Or maybe like a product's API where you still need the product for your API calls to accomplish something.
Edit: Whoops, Chromium is installed after all.
Of course ChromeDriver requires Chrome or Chromium.
As per ChromeDriver - WebDriver for Chrome ChromeDriver is a separate executable that WebDriver uses to control Chrome.
Now, as per Requirements - ChromeDriver the server expects you to have Chrome installed in the default location for each system as follows:
1For Linux systems, the ChromeDriver expects /usr/bin/google-chrome to be a symlink to the actual Chrome binary.
You can also force ChromeDriver to use a custom location by setting a special capability. You can find the documentation in Using a Chrome executable in a non-standard location

Browser Automation using Bash On Ubuntu On Windows

We have a strong regression automation suite developed with Watir for Web Apps and Calabash for IOS and Android and so far our executions are happening on Mac OS.
We want to use RVM on Windows 10 so enabled bash feature on Windows 10 and installed RVM using Bash On Ubuntu On Windows. Using this installed RVM I would like to trigger the browsers installed on my Windows. I would like to know whether I am trying something that is possible ?
Just to check, I tried to trigger chrome browser in irb.
I placed my chrome driver below.
I have set my path and find the same below
On triggering chrome browser in irb I am getting the below error even though the path is set correct.
Selenium::WebDriver::Error::WebDriverError: Unable to find chromedriver.
I would like to know whether trying to trigger the browser installed on my windows environment through the Bash On Ubuntu On Windows terminal is practically possible attempt or not ? If so, please let me know where the disconnect had happened in my setup.
Below are the versions I am installed with .
rvm 1.29.3 (latest)
ruby-2.2.7
watir (6.8.4)
The error you are getting generally indicates that you have installed the chromedriver.exe file into a directory that is not on your path. Either move the file to a directory that is in the default path, or modify the path to add the directory with chromedriver.exe to the path.
Generally it's best to do that with the default path set by Windows on boot-up lest you have to have some batchfile that is run to alter the path before running IRB or a script that runs your tests.
Use the webdrivers gem. It ensures you always have the latest chromedriver.exe in your ~/.webdrivers directory, by downloading the newest version as necessary. It directs the Ruby code to use that driver regardless of what other chromedriver is on your system and whether it is or isn't on PATH.

How to configure Brackets.io Live Development to use Chromium instead of Chrome on OSX?

I would like to reuse already installed in the system Chromium browser and do not additionally install Chrome (because then I can't use Chromium at the same time - they share one profile folder by default on OSX, also for other reasons)
Here are ideas, the problem is - they are just conceptual, not ready to implement:
edit Brackets configs (didn't find much of them) to call Chromium (how it calls)
edit Chromium configs (to mimic the Chrome?)
use dev tools remote debugger and connect to created web-socket
create link to Chromium via: sudo ln -s ~/Applications/Chromium.app/Contents/MacOS/Chromium /usr/bin/google-chrome // didn't work
connect to the simple static server from the folder (via httpster) // didn't work
How is it possible to use Chromium instead of Google Chrome to use Brackets' Live Development feature?
On Mac, Brackets locates Chrome based on its bundle identifier. So in theory, if you hack Chromium's Info.plist to change its bundle id to com.google.Chrome (and I guess remove or patch any copies of Chrome that might collide with that) -- then Brackets should launch Chromium for you.
In the future, Brackets plans to make this more configurable as an official feature - but it's not there yet.

Standalone version of Chrome (for development)

I use the stable version of Google Chrome as my default browser on my system. I now need to work on a project requiring the development version of Chrome, yet I do not wish to replace my system install of Chrome.
Does there exist a standalone package of Chome which can be unpacked into a folder and executed entirely from there? Ie, it should not require anything to be installed, it should not touch the profile associated with my installed version of Chrome. I should be able to download different versions of this into different folders, and be sure that they do not conflict with each other..
(Ideally we could package up prototype builds complete with a copy of this version of Chrome. These packages would then be as self contained as a desktop application...)
You could download the Chromium flavour (which is the open source browser that runs Google Chrome). You can download the latest and greatest from:
http://build.chromium.org/buildbot/continuous/LATEST/
If you have specific dates/revision that you want to download, you can pick them from:
http://build.chromium.org/buildbot/continuous/
That will not interfere with the current version of Chrome, instead it will be using Chromium folder structure (chrome replaced with chromium everywhere).
Simply get the portable version, it does what as you need.
As an answer above, you could get Chromium (portable) which also includes chromedriver from chromium snapshots page.
Pick one with the biggest number (scroll down):
https://commondatastorage.googleapis.com/chromium-browser-snapshots/index.html?prefix=Win_x64/
If the link is dead, there is always a solution to build it from source code, it's a benefit of open source application.
https://chromium.googlesource.com/chromium/src/+/refs/heads/main/docs/windows_build_instructions.md#Build-Chromium
Chromium home page:
https://www.chromium.org/
Hope it helps!
I believe Chrome on Windows installs itself into the Application Data (/Users on Win7) folder of a user. While I can't test this at the moment, try creating a new user account, install Chrome, then log into your other account. Then try running both at the same time. Might be a bit hard to find the executable.
Another option would be to run it in a VM. More expensive versions of Win7 have this somewhat built-in (you need to download an XP image from Microsoft, but the VM software is pre-installed, I think) but you can also install VirtualBox + your own ISO. On a decent computer system, you shouldn't get too much of a performance hit.
A really silly way of doing this is installing the multiple concurrent users Remote Desktop hack, Remote Desktopping to your own computer (if that's possible) and running the second Chrome install as a different user.