自从Chrome 59之后,提供了Headless mode,这个模式在前端的自动化测试框架进行持续集成实践中被广泛地使用。这篇文章介绍一下在图形化操作无法使用的情况下,Chrome的安装和版本确认的方法。
下载对应官方提供的对应操作系统的Chrome的二进制文件,然后置于PATH的搜索路径中即可。这里以macOS操作系统下使用这种方式进行安装和确认的方式进行说明。
liumiaocn:~ liumiao$ sw_vers
ProductName: Mac OS X
ProductVersion: 10.14
BuildVersion: 18A391
liumiaocn:~ liumiao$
步骤1: wget https://dl.google.com/chrome/mac/stable/GGRO/googlechrome.dmg
步骤2: open googlechrome.dmg
步骤3: /Volumes/Google\ Chrome/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --version
步骤4: umount /Volumes/Google\ Chrome/
在实际使用时可以在步骤2和步骤3之间添加将解压后的dmg中的内容拷贝纸/Applications下的操作即可。操作示例日志如下所示
liumiaocn:chrome liumiao$ wget https://dl.google.com/chrome/mac/stable/GGRO/googlechrome.dmg
... 省略
liumiaocn:chrome liumiao$ open googlechrome.dmg
liumiaocn:chrome liumiao$ /Volumes/Google\ Chrome/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --version
Google Chrome 78.0.3904.87
liumiaocn:chrome liumiao$ umount /Volumes/Google\ Chrome/
liumiaocn:chrome liumiao$
这种方式在使用open命令的时候实际上会打开dmg文件安装的拖动界面,虽然有自欺欺人嫌疑,但是也算是实现了非图形化安装的方式。
以CentOS为例,可以使用如下方式进行安装
[root@liumiaocn ~]# cd /etc/yum.repos.d/
[root@liumiaocn yum.repos.d]# vi chrome.repo
[root@liumiaocn yum.repos.d]# cat chrome.repo
[google-chrome]
name=google-chrome
baseurl=http://dl.google.com/linux/chrome/rpm/stable/$basearch
enabled=1
gpgcheck=1
gpgkey=https://dl-ssl.google.com/linux/linux_signing_key.pub
[root@liumiaocn yum.repos.d]#
[root@liumiaocn yum.repos.d]# yum install -y google-chrome-stable --nogpgcheck
Failed to set locale, defaulting to C
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
...省略
google-chrome | 1.3 kB 00:00:00
google-chrome/x86_64/primary | 1.7 kB 00:00:00
google-chrome 3/3
Resolving Dependencies
--> Running transaction check
---> Package google-chrome-stable.x86_64 0:78.0.3904.87-1 will be installed
...省略
Dependencies Resolved
========================================================================================================================================
Package Arch Version Repository Size
========================================================================================================================================
Installing:
google-chrome-stable x86_64 78.0.3904.87-1 google-chrome 61 M
Installing for dependencies:
adwaita-cursor-theme noarch 3.28.0-1.el7 base 641 k
...省略
Complete!
[root@liumiaocn yum.repos.d]#
版本确认
[root@liumiaocn yum.repos.d]# which google-chrome
/usr/bin/google-chrome
[root@liumiaocn yum.repos.d]# google-chrome --version
Google Chrome 78.0.3904.87
[root@liumiaocn yum.repos.d]#
可以考虑使用开源版本的Chromium来代替,比如在Alpine Linux上即可使用这种方式,Alpine Linux内置Chromium的包,可以使用如下方式直接安装即可使用。
/ # cat /etc/alpine-release
3.9.4
/ #
/ # apk add chromium
fetch http://dl-cdn.alpinelinux.org/alpine/v3.9/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.9/community/x86_64/APKINDEX.tar.gz
(1/68) Installing eudev-libs (3.2.7-r0)
...省略
OK: 620 MiB in 179 packages
/ #
版本确认
/ # which chromium-browser
/usr/bin/chromium-browser
/ #
/ # chromium-browser --version
Chromium 72.0.3626.121
/ #