ubuntu 16.04 (桌面与服务器版)配置Selenium+Chrome+Python3实现自动化测试
- 2019 年 11 月 23 日
- 筆記
ubuntu 16.04 (桌面与服务器版)配置Selenium+Chrome+Python3实现自动化测试
1.安装chrome
Python
sudo apt-get install libxss1 libappindicator1 libindicator7 wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb sudo dpkg -i google-chrome*.deb
123 |
sudo apt-get install libxss1 libappindicator1 libindicator7wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.debsudo dpkg -i google-chrome*.deb |
---|
如果上面运行 sudo dpkg -i google-chrome*.deb
命令之后报错
Python
Errors were encountered while processing:
1 |
Errors were encountered while processing: |
---|
使用如下命令修复一下:
Python
sudo apt-get install -f
1 |
sudo apt-get install -f |
---|
之后再次运行下面命令就可以了
Python
sudo dpkg -i google-chrome*.deb
1 |
sudo dpkg -i google-chrome*.deb |
---|
2.安装python、安装Selenium
Python
sudo apt-get install python3-pip sudo pip install selenium
12 |
sudo apt-get install python3-pipsudo pip install selenium |
---|
3.安装chromedriver
安装最新版本的chromedriver,下载页面: http://chromedriver.storage.googleapis.com/index.html
在这个页面里列出了chromedriver的各个版本,我选择版本(2.29),使用命令行安装:
Python
wget -N http://chromedriver.storage.googleapis.com/2.29/chromedriver_linux64.zip unzip chromedriver_linux64.zip chmod +x chromedriver sudo mv -f chromedriver /usr/local/share/chromedriver sudo ln -s /usr/local/share/chromedriver /usr/local/bin/chromedriver sudo ln -s /usr/local/share/chromedriver /usr/bin/chromedriver
123456 |
wget -N http://chromedriver.storage.googleapis.com/2.29/chromedriver_linux64.zipunzip chromedriver_linux64.zipchmod +x chromedriversudo mv -f chromedriver /usr/local/share/chromedriversudo ln -s /usr/local/share/chromedriver /usr/local/bin/chromedriversudo ln -s /usr/local/share/chromedriver /usr/bin/chromedriver |
---|
安装后确认/usr/bin目录下是否有chromedriver文件
由于时效性,在安装时应当先去网站查看最新版本,然后替换命令行中的2.29
版本信息
4.简单示例
这时候就可以在图形界面的终端运行python自动化测试脚本了。 示例脚本,打开网址并截图:
Python
from selenium import webdriver driver = webdriver.Chrome() driver.get("https://www.baidu.com/") driver.save_screenshot(driver.title+".png")
12345 |
from selenium import webdriver driver = webdriver.Chrome()driver.get("https://www.baidu.com/")driver.save_screenshot(driver.title+".png") |
---|
5.服务器无可视化界面环境运行
如果想要在服务器无可视化界面使用Chrome进行测试,需要使用工具Xvfb.
Python
sudo apt-get -y install xvfb gtk2-engines-pixbuf sudo apt-get -y install xfonts-cyrillic xfonts-100dpi xfonts-75dpi xfonts-base xfonts-scalable # 截图功能,可选 sudo apt-get -y install imagemagick x11-apps Xvfb -ac :99 -screen 0 1280x1024x16 & export DISPLAY=:99
12345 |
sudo apt-get -y install xvfb gtk2-engines-pixbufsudo apt-get -y install xfonts-cyrillic xfonts-100dpi xfonts-75dpi xfonts-base xfonts-scalable# 截图功能,可选sudo apt-get -y install imagemagick x11-appsXvfb -ac :99 -screen 0 1280x1024x16 & export DISPLAY=:99 |
---|
这可以是手动在命令行敲完运行,也可以使用python包完成
手动版直接在上面Xvfb装完启动后执行下面脚本:
Python
from selenium import webdriver driver = webdriver.Chrome() driver.get("https://github.com/") print driver.title
12345 |
from selenium import webdriver driver = webdriver.Chrome()driver.get("https://github.com/")print driver.title |
---|
自动版:
Python
from pyvirtualdisplay import Display from selenium import webdriver display = Display(visible=0, size=(800, 600)) display.start() driver = webdriver.Chrome() driver.set_window_size(800,600) #设置浏览器窗口的大小 url = "https://www.baidu.com" driver.get(url)
12345678 |
from pyvirtualdisplay import Displayfrom selenium import webdriverdisplay = Display(visible=0, size=(800, 600))display.start()driver = webdriver.Chrome()driver.set_window_size(800,600) #设置浏览器窗口的大小url = "https://www.baidu.com"driver.get(url) |
---|
原创文章,转载请注明: 转载自URl-team
本文链接地址: ubuntu 16.04 (桌面与服务器版)配置Selenium+Chrome+Python3实现自动化测试