Can I run multiple versions of Google Chrome on the same machine? (Mac or Windows)

This fabulous answer suggests there’s no way to run multiple versions of Google Chrome on one machine.

Every now and then you’ll get a website user stuck on an old version of Chrome (no idea how, but it happens — maybe they installed the standalone version?) with an issue, and you need to be able to verify it. Bit difficult to do that without their browser version around.

Does anyone know if there’s actually a way to do this? I.e.

  1. Obtain an installer for an older version of Google Chrome (Google seems to keep very quiet about versions, which is great for users, less great for developers trying to support old versions)
  2. Run two versions of Google Chrome on one machine
173120 次浏览

A small virtual machine maybe?

Try VirtualBox a freeware program to install virtual machines (a lot of work for what you want to do, but it'll work)

Oldapps.com has old versions of Chrome available for download, and they’re the standalone versions, so combined with @SamMeiers’ answer, these work a treat.

The Google Chrome support forum has some good discussion of getting old versions of Chrome.

As professional testers, my friends use Spoon.net browsers section to test compatibility of site in various browsers. Hope this should help you.

I have done the following on a Citrix XenDesktop VM, however you could just do this on your local PC:

Microsoft Virtual PC

If you are running Windows 7, you can download Microsoft virtual PC and create as many copies of Virtual PC as you need for testing without any licensing issues:

This requires no additional Windows licenses; you simply set up multiple machines with different browsers on them. You can run the browsers out of the window by following the tutorial available here:

Installing Browsers

You will need to create at least 3 virtual PC's (tip: keep the memory down to 256mb for each virtual PC to avoid wasting memory on the virtual desktops).

On the first VPC I installed this:

along with Chrome 1, Safari 3.1, Opera 8.

On the second I installed Internet Explorer 7, Chrome 3, Safari 3.2.1, Opera 9.

On the third I installed Internet Explorer 8, Chrome 8. Safari 4.0.5, Opera 10.

On Windows 7 (native machine) I had Internet Explorer 9, Chrome 11, Safari 5, Opera 11 and for Firefox I install the following app natively too:

Personally I would not go back further than 5 years with compatibility (other than IE for government networks) unless you have a specific requirement (I split Chrome & Opera across years as I decided there were just to many releases). However, if you find that someone has a specific issue with a site using a specific version of the browser it becomes very easy to install additional virtual machines to run additional browser versions.

Obtaining Older Browsers

You can download older versions of Chrome from here:

and Opera here:

Virtualizing The Test Platform (Optional)

I use Xen Desktop to virtualize the testing platform so that I can use it anywhere and have included my favorite development tools on there as well:

The express edition is available for free.

A Good Commercial Alternative

Another great product I recently came accross is Stylizer which is a CSS editor that installs multiple versions of browsers for testing purposes, however this is a commercial paid for product but is very good and worth the small fee they require to run it.

I've recently stumbled upon the following solution to this problem:

Source: Multiple versions of Chrome

...this is registry data problem: How to do it then (this is an example for 2.0.172.39 and 3.0.197.11, I'll try it with next versions as they will come, let's assume I've started with Chrome 2):

  1. Install Chrome 2, you'll find it Application Data folder, since I'm from Czech Republic and my name is Bronislav Klučka the path looks like this:

    C:\Documents and Settings\Bronislav Klučka\Local Settings\Data aplikací\Google\Chrome
    

    and run Chrome

  2. Open registry and save

    [HKEY_CURRENT_USER\Software\Google\Update\Clients\{8A69D345-D564-463c-AFF1-A69D9E530F96}]
    [HKEY_CURRENT_USER\Software\Google\Update\ClientState\{8A69D345-D564-463c-AFF1-A69D9E530F96}]
    

    keys, put them into one chrome2.reg file and copy this file next to chrome.exe (ChromeDir\Application)

  3. Rename Chrome folder to something else (e.g. Chrome2)

  4. Install Chrome 3, it will install to Chrome folder again and run Chrome

  5. Save the same keys (there are changes due to different version) and save it to the chrome3.reg file next to chrome.exe file of this new version again
  6. Rename the folder again (e.g. Chrome3)

    the result would be that there is no Chrome dir (only Chrome2 and Chrome3)

  7. Go to the Application folder of Chrome2, create chrome.bat file with this content:

    @echo off
    regedit /S chrome2.reg
    START chrome.exe -user-data-dir="C:\Docume~1\Bronis~1\LocalS~1\Dataap~1\Google\Chrome2\User Data"
    rem START chrome.exe -user-data-dir="C:\Documents and Settings\Bronislav Klučka\Local Settings\Data aplikací\Google\Chrome2\User Data"
    

    the first line is generic batch command, the second line will update registry with the content of chrome2.reg file, the third lines starts Chrome pointing to passed directory, the 4th line is commented and will not be run.

    Notice short name format passed as -user-data-dir parameter (the full path is at the 4th line), the problem is that Chrome using this parameter has a problem with diacritics (Czech characters)

  8. Do 7. again for Chrome 3, update paths and reg file name in bat file for Chrome 3

Try running both bat files, seems to be working, both versions of Chrome are running simultaneously.

Updating: Running "About" dialog displays correct version, but an error while checking for new one. To correct that do (I'll explain form Chrome2 folder): 1. rename Chrome2 to Chrome 2. Go to Chrome/Application folder 3. run chrome2.reg file 4. run chrome.exe (works the same for Chrome3) now the version checking works. There has been no new version of Chrome since I've find this whole solution up. But I assume that update will be downloaded to this folder so all you need to do is to update reg file after update and rename Chrome folder back to Chrome2. I'll update this post after successful Chrome update.

Bronislav Klucka

在评论中,我用 提到一步一步的方法轻松安装多个 Chrome 版本,并排。这个答案引用了我最初的答案,并且包含了一个脚本来为你完成这个工作。

引自:

Chrome : 独立安装程序可以从 文件 Hippo下载,也可以运行多个 Chrome 版本 肩并肩。

虽然 Sandboxie 可以使用,但它是 建议使用下一个本机方法以运行多个 并排版本。

  1. 文件 Hippo下载所需的版本。

  2. 创建 主目录,例如 C:\Chrome\

  3. 提取 安装程序(= 没有安装) ,例如使用 7-Zip 也提取这个文件,并下降创建的 Chrome-bin 现在,您将看到 chrome.exe和一个类似于 18.0.1025.45的目录。 将 chrome.exe移至 18.0.1025.45,然后将此目录移至 Chrome-bin中剩余的文件可以安全地 删除。

  4. 创建一个快捷方式 每个版本:

     "C:\Chrome\18.0.1024.45\chrome.exe" --user-data-dir="..\User Data\18" --chrome-version=18.0.1025.45
    

这条捷径的解释是:

  • 这是 发射器
  • 用户配置文件,相对于 chrome.exe的位置。你也可以有

使用 --user-data-dir="C:\Chrome\User Data\18"达到同样的效果。 设置您对 最低 Chrome 版本的首选项,并复制 每个人 Chrome 版本的用户配置文件 拒绝使用新版本的用户配置文件。

  • 二进制文件的 --chrome-version=18.0.1025.45地点:
 * The location (eg `18.0.1025.45`) must be the name of the directory:
* Must start and end with a number. A dot may appear in between.
* The numbers do not necessarily have to match the real version number (though it's convenient to use real version numbers...).

关于配置: 所有首选项都可以设置为 我通常会更改主页和 引擎盖的设定。

(这个问题的答案在旧版本的 Chrome 浏览器中提到了 旧应用,但是他们不再通过用户界面提供直接下载链接。这些文件仍然存在,我已经创建了一个 shell 脚本(bash)来简化本地 Chrome 版本库的创建——参见 https://gist.github.com/Rob--W/8577499)

# # VBScript 自动安装、配置和启动 我有 创建了一个 VBScript,它安装 还有配置 Chrome (在 XP 和 Windows7测试)。启动脚本,然后出现一个文件对话框(或者: 在 VBS 上拖放 Chrome 安装程序)。选择 Chrome 安装程序的目的地,脚本会自动解压文件并从预先配置的基本目录中复制配置文件。

默认情况下:

  1. Chrome 二进制文件放在 C:\Chrome\的子文件夹中。
  2. 用户配置文件是在 C:\Chrome\User Data\中创建的。
  3. 用户配置文件将从 sFolderChromeUserDataDefault变量(默认为 C:\Chrome\User Data\2\)中指定的目录中复制。 在第一次安装 Chrome 之后,设置你的首选项(主页,书签,。.).然后修改变量(见3)在源代码中。在此之后,安装和配置 Chrome 就变得非常容易了。

唯一的依赖项是 7比0,预计位于 C:\Program Files\7-zip\7z.exe

我想我可能在 Windows 上解决了这个问题。你可以同时运行不同版本的 Chrome!

做以下事情:

  • 将版本号目录复制到通常的 c: users 你的用户 appdata 本地 google chrome 应用程序目录(我假设在更新发生之前你已经备份了旧的 chrome 版本目录)

  • 将旧版本中的 chrome.exe 复制为一个新名称,例如 chrome _ custom.exe

  • 运行 chrome 作为 chrome _ custom.exe —— chrome-version = olderVersion —— user-data-dir = newDir

就是这样!我使用这种方法在使用硒的 Chrome 上运行自动测试,直到硒赶上并且与最新的 Chrome 工作得很好。

虽然这似乎是一个有很多答案的老问题,但我正在发布另一个,因为它提供了关于另一种方法的信息(看起来比前面提到的更方便) ,而且问题本身仍然是实际的。

第一个 ,有一个博客文章 在 Windows 上运行多个版本的 Google Chrome,它描述了一个可以工作的方法,但是有两个缺点:

  • 你不能同时运行不同版本的 Chrome 实例;
  • 不时地,Chrome 会更改个人资料的格式,而且只要 此方法安装的2个版本与 配置文件,这可能会产生一个问题,如果它发生在测试2版本 配置文件格式不兼容;

Second 方法是首选方法,我目前正在使用它。它依赖于便携版本的 Chrome 浏览器,这种浏览器在 Portableapps.com的每个稳定版本中都可以使用。

此方法的唯一要求是现有的 Chrome 版本不应该在下一个版本的安装期间运行。当然,每个版本都必须安装在单独的目录中。这样,在安装之后,你就可以并行运行不同版本的 Chrome 了。当然,这种方法也有一个缺点:

  • 所有版本的配置文件都是独立存在的,所以如果你需要以一种特定的方式设置一个配置文件,你应该根据你安装的不同 Chrome 版本的数量来设置两次或更多次。

我采用了 @ RobW 的好答案来让它在 Mac OS X10.8上工作。其他版本的 Mac OS X 可能也可以工作。

这一点额外的工作实际上只需要保持您的原始谷歌浏览器用户设置和旧版本分离。

  1. 下载另一个版本的 GoogleChrome,比如 开发频道,并解压缩 .app文件

  2. (可选)重命名为 Google Chrome X.app-如果还没有不同于 Google Chrome.app

(一定要用你刚刚下载的 Chrome 的实际版本替换下面所有步骤中的 X)

  1. 移动 Google Chrome X.app/Applications 没有覆盖你当前的 Chrome

  2. 打开终端,创建一个 shell 脚本并使你的脚本可执行:

    cd /Applications
    touch google-chrome-version-start.sh
    chmod +x google-chrome-version-start.sh
    nano google-chrome-version-start.sh
    
  3. 根据下载的版本修改以下代码并将其粘贴到脚本中

    #!/usr/bin/env bash
    /Applications/Google\ Chrome\ X.app/Contents/MacOS/Google\ Chrome\ X --user-data-dir="tmp/Google Chrome/X/" & disown
    

    例如 开发频道:

    #!/usr/bin/env bash
    /Applications/Google\ Chrome\ Dev.app/Contents/MacOS/Google\ Chrome\ Dev --user-data-dir="tmp/Google Chrome Dev/" & disown
    

    (这将把 Chrome 的数据存储在 ~/tmp/Google Chrome/VERSION/。更多解释请参阅 最初的答案。)

  4. 现在执行脚本,开心点!

    /Application/google-chrome-version-start.sh
    

在运行 OS X 10.15 Catalina 操作系统的 Mac 上用 Google Chrome 88进行了测试

你的英里数可能会有所不同(我的确是这样) ,但以下是对我有用的东西(目前的 Chrome 版本是33.x,而我对24.x 感兴趣)

  • 访问 Chromium repo 代理查找站点: http://omahaproxy.appspot.com/

  • 在名为“修订查找”的小框中输入版本号。这将把它转换为 Subversion 修订号。记住这个数字。

  • 访问构建存储库: http://commondatastorage.googleapis.com/chromium-browser-snapshots/index.html

  • 选择与您感兴趣的操作系统对应的文件夹(我有 Win x64,但必须使用 Win,因为没有与我所寻找的版本对应的 x64版本)。

  • 如果选择 Win,可能需要等待一段时间——因为有些页面有很多条目。页面加载后,滚动到包含您在前一步中标识的修订号的文件夹。如果你找不到,就选下一个。老实说,这是一个小小的尝试和错误-我不得不备份大约50个版本,直到我发现一个版本接近我正在寻找的版本

  • 深入到该文件夹并下载(在 Win 版本上) chrome-win32.zip。

  • 解压该文件,然后运行 chrome.exe

这对我来说很有用,我正在运行最新的 Chrome 25版本,没有问题(旧版本的一些配置文件问题,但这既不是这里也不是那里)。不需要做别的。

同样,YMMV,但是首先尝试这个解决方案,因为它需要最少的愚蠢行为。

对于那些不关心它是否是“谷歌浏览器”的人,我建议使用“ Chromium”。

见: 下载 Chromium

  1. 查一下 http://googlechromereleases.blogspot.com/search/label/Stable%20updates最后一次提到“44”的地方。
  2. 在位置查找中循环该版本历史记录(“44.0.2403.157”)
  3. 在这种情况下,它返回一个基本位置“330231”。这是44发行版在2015年5月分支的提交。*
  4. 打开连续构建存档
  5. 点击你的平台(Linux/Mac/Win)
  6. 将“330231”粘贴到顶部的 filter 字段中,并等待所有结果到 XHR 中。
  7. 最终我得到了一个完美的结果: 前缀 = Mac/330231/”rel = “ norefrer”> https://commondatastorage.googleapis.com/chromium-browser-snapshots/index.html?prefix=mac/330231/
    1. 有时您可能需要递减提交数,直到找到一个。
  8. 下载并运行!

Rob W 如果你能从安装程序文件中提取出 chrome.7z,那么答案是有效的。不幸的是,安装程序文件不再是可提取的了,但是如果你安装了 chrome 并且它自己更新了,你可以在这个地址中找到 chrome.7z文件:

C:\Program Files (x86)\Google\Chrome\Application\95.0.4638.54\Installer

或者在你的硬盘上搜索 chrome.7z文件,找到 Google 为你的操作系统存储更新文件的地方。
提取后的 Rob W提到去提取文件夹,并运行新的命令铬:

.\chrome.exe --user-data-dir=".\User Data" --chrome-version=95.0.4638.54

我已经尝试了各种方法来测试一个场景,这是铬浏览器特定的问题之一。

对我来说最好的空调解决方案: 使用便携式版本

第0步: 卸载你当前安装的谷歌浏览器

  • 进入控制面板 > 卸载程序 > 点击谷歌浏览器 > 卸载

第一步: 下载便携式铬版本和重命名

  • 便携式旧版 Chrome 版本下载您选择的便携版本并保存它,而不是直接运行它。
  • 转到下载的文件位置,将文件重命名为 _online.paf.exe。示例:
  • google-chrome-portable-96-0-4664-93.exe重命名为 google-chrome-portable-96-0-4664-93_online.paf.exe

步骤2: 安装便携版本

  • 单击重命名的 exe 文件继续安装。
  • 当询问目标文件夹路径-> 重命名它以匹配版本(只是为了避免与其他版本冲突和识别) ,如下所示。 Rename Destination Folder to be unique

第三步: 最后运行下载的版本:

  • 进入便携式安装文件夹,从那里运行 GoogleChromePortable.exe,如下所示。

Run Portable exe

哇! ! 这工作。非常感谢 便携式 Chrome 版本的创造者。