环境部署(九):linux下安装python+chrome+Xvfb
在基于selenium进行的UI自动化测试中,开发调试环境一般都是windows操作系统。完成后需要部署到专门的测试环境。
如要要部署到linux环境的服务器(阿里云、腾讯云)执行,那么测试脚本也需要对应的浏览器支持, 才能正常进行测试。
這篇博客,介绍下如何在如何在linux环境安装python、chrome、chromium、Xvfb的命令和方法。。。
1、安装python
linux系统自带python,不过一般都是2.6或者2.7版本,可以通过命令 python -V 查看当前的python版本号
如果你用的python3.0+的版本,那么就需要升级为本地开发对应的python版本,可以输入下面的命令来升级:
从下载链接下载安装包: wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz
解压缩包: tar zxvf Python-3.6.2.tgz
输入命令 cd Python-3.6.2 ,进入刚刚解压的目录,然后执行下列3个命令:
./configure (不是每一个安装包都需要执行这个命令,如果是二进制包则不需要这一步)
make
make install
解释:
在解压出的文件夹中有一个名为configure的可执行脚本程序,它用于检查系统是否有编译时所需的库,以及库的版本是否满足编译的需要等系统信息,使用 ./configure 命令执行。
检查通过后,将生成用于编译的MakeFile文件。此时,可以开始进行编译了,使用#make命令编译。
成功编译后,通过#make install安装。
安装完毕,应清除编译过程中产生的临时文件和配置过程中产生的文件。键入如下命令:
make clean
make distclean
然后可以将刚刚下载的解压包和解压出来的文件夹删掉。安装成功后,可以输入 whereis python3 查看安装路径
输入python3,可以进入python命令行,输入print测试,然后就是pip命令安装自己需要的python库。
2、关于chrome
linux环境下运行UI自动化测试脚本,并不是不需要chrome浏览器,只是不需要显示界面,但实际它还是在浏览器内操作的。
利用的只是它的headless模式(chrome浏览器在59版本之后的正式版里加入了headless模式 ,即:无界面模式)。
我的linux版本:Centos7.4:64位
PS:chrome已不支持Linux 32位,也不支持Centos,所以如果你的服务器是Centos的话,只能安装Chromium(都是google的产品,这个是开源项目)。
对Centos不熟悉的童鞋,可以参考这里:Centos yum源的配置与使用
3、安装chrome
在目录/etc/yum.repos.d/下新建文件google-chrome.repo,命令如下:
cd /ect/yum.repos.d/
vim google-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
然后保存退出,输入如下命令:
yum -y install google-chrome-stable
PS: Google官方源可能在中国无法使用,导致安装失败或者在国内无法更新,可以添加以下参数来安装:
yum -y install google-chrome-stable --nogpgcheck
4、安装chromium
安装chromium的方法有两种,请自行选择。。。
①、输入命令 cd /etc/yum.repos.d ,进入yum源目录,然后输入命令 wget http://people.centos.org/hughesjr/chromium/6/chromium-el6.repo ,
下载chromium安装包:

输入命令 yum install chromium 进行安装,过程稍长,耐心等待:

中间会遇到提示,确认下载的安装包,输入"y"即可,等待安装完成:

②、安装yum源,输入命令 sudo yum install -y epel-release
安装Chromium: yum install -y chromium
检查安装结果: ll /usr/bin/ | grep chrom
5、安装chromedriver
浏览器安装成功后,要想运行脚本,浏览器驱动是必不可少的一个文件。
首先查看安装的chrome浏览器版本:输入命令 google-chrome -version
然后在chromedriver下载网站,查看LATEST REALEASE文件,里面会介绍最新的版本
chromedricer下载链接:http://chromedriver.storage.googleapis.com/index.html
或者这个链接也可以:https://npm.taobao.org/mirrors/chromedriver
下载对应的版本,命令如下:
wget http://chromedriver.storage.googleapis.com/index.html?path=2.38/chromedriver_linux64.zip
然后解压缩,输入命令 unzip chromedriver_linux64.zip
将下载的chromedriver移动当chrome浏览器目录下,输入命令 sudo mv chromedriver /usr/local/bin/chromedriver
然后改变用户执行的权限,输入命令 sudo chmod u+x,o+x /usr/local/bin/chromedriver
最后查看版本,确认是否可用?输入命令 chromedriver --version
6、安装Xvfb
Xvfb是一个实现了X11显示服务协议的显示服务器。 不同于其他显示服务器,Xvfb在内存中执行所有的图形操作,不需要借助任何显示设备。
安装Xvfb的方法也有两种,请自行选择。。。
①、输入如下命令行安装:
cd /tmp
wget http://vault.centos.org/6.5/os/x86_64/Packages/xorg-x11-server-Xvfb-1.13.0-23.el6.centos.x86_64.rpm
yum install xorg-x11-server-Xvfb-1.13.0-23.el6.centos.x86_64.rpm
解释:使用了“-extension RANDR -nolisten inet6”是因为Xvfb默认使用 ipv6,如果不添加就会报错。。。
出现如下界面,则表示安装成功:

②、输入如下命令行安装
yum install Xvfb -y
yum install xorg-x11-fonts* -y
同样,安装完成后别忘记检查是否安装成功。。。
以上方法为linux系统Centos下的安装命令和方法,仅供参考。。。
环境部署(九):linux下安装python+chrome+Xvfb的更多相关文章
- linux下安装python linux下一些常用的命令
注意 ubuntukylin-14.04.2-desktop-amd64 自带python2.7.6 这个说的比较详细 http://wenku.baidu.com/link?url=gaeFcQrc ...
- Linux 下安装Python报错:zlib not available
问题描述: 在Linux下安装Python时出现一个错误:zipimport.ZipImportError: can't decompress data; zlib not available 详细错 ...
- python 基础1.1--windows/linux 下安装python
一.windows下安装python 1>windows上python后缀是.msi的,下载下来后,直接双击运行.会在c盘生成python.exe的文件,把python.exe的文件加入到win ...
- linux下安装python
在Linux下安装Python的操作相当简单,按如下步骤操作即可: 命令: wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgzt ...
- Linux 下安装python软件包(pip、nose、virtualenv、distribute )
新手刚开始学习Python,目前学习<笨方法学python>ing- 在学习习题46时需要安装几个软件包:pip.nose.virtualenv.distribute !在此记录Linux ...
- 【云服务器部署】---Linux下安装nginx
[云服务器部署]---Linux下安装nginx 之前两篇,分别讲了:Linux下安装MySQL 和 springboot项目部署云服务器 nginx安装也是挺简单的.具体步骤如下: 第一步,下载 ...
- 【云服务器部署】---Linux下安装MySQL
[云服务器部署]---Linux下安装MySQL 有关如何阿里云ECS建网站,推荐一片文章,我是是通过这篇文章安装tomcat和jdk的 网址:阿里云ECS建网站(建站)超详细全套完整图文教程! 注意 ...
- linux下安装python环境
1.linux下安装python3 a. 准备编译环境(环境如果不对的话,可能遇到各种问题,比如wget无法下载https链接的文件) yum groupinstall 'Development To ...
- Linux下安装python,mysql,redis
linux 安装Python3 1.python下载 请在终端输入如下命令: cd /home wget http://cdn.npm.taobao.org/dist/python/3.6.5/Pyt ...
随机推荐
- js-new、object.create、bind的模拟实现【转载备忘】
//创建Person构造函数,参数为name,age function Person(name,age){ this.name = name; this.age = age; } function _ ...
- eclipse中maven项目jar包不会自动下载解决办法
Eclipse中maven从远程仓库中下载jar包有时会很慢,有些甚至进度停止不动,这个时候我们可能会终止当前下载,但是终止jar包下载后会出现一个问题,再次打开Eclipse时,你会发现提示你项目中 ...
- Link Between SAP SD, MM & FI
Link Between SAP SD, MM & FI 1. In SAP you will always get integration with other modules. SD wi ...
- 广州.net俱乐部12月份ABP框架活动场地征集、志愿者征集、合作讲师\副讲师征集
大家好,我在<被低估的.net(上) - 微软MonkeyFest 2018广州分享会活动回顾>一文中提到,我将在12月份搞一场ABP框架活动,现向大家征集活动场地.志愿者.合作讲师\副讲 ...
- Linux Linux下最大文件描述符设置
Linux下最大文件描述符设置 by:授客 QQ:1033553122 1. 系统可打开最大文件描述符设置 查看系统可打开最大文件描述符 # cat /proc/sys/fs/file-max 6 ...
- C#:关于C#4中IEnumerable<out T>的理解
IEnumerable<out T>这个接口非常常见,它是最基础的泛型集合接口,表示可迭代的项的序列. 但是奇怪的是为什么泛型参数要带一个“out”? 经过一番资料查阅后,发现此“out” ...
- Android Studio多渠道打包(一)
1. 多渠道的概念 APP发布到不同的应用平台,监测用户是从哪个平台安装的. 2. 为什么要多渠道打包 统计用户安装APP来源 批量修改生成的apk文件名 可更改包名 生成不同应用名称或图标 3.多渠 ...
- leetcode-83.删除排序链表中的重复元素
leetcode-83.删除排序链表中的重复元素 Points 链表 题意 给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次. 示例 1: 输入: 1->1->2 输出: 1- ...
- recovery&linux系统升级数据更新分析总结
先说说对升级的理解吧.系统升级是软件更新及BUG修复的主要方式,升级的主要原理就是数据搬移的过程,把我们需要的数据,从某个地方,更新到另外的一个地方.这个过程就叫做升级.一般是当我们系统有了新的功能增 ...
- GitHub Flow & Git Flow 基于Git 的两种协作开发模式
介绍基于Git 两种协作开发模式,GitHub Flow & Git Flow 对于Github 一些好用的特殊操作技巧 ,可以见GitHub 特殊操作技巧 和Git的基本操作 一 GitHu ...