webUI自动化环境准备
Selenium是一个用于Web应用程序自动化测试工具。Selenium测试直接运行在浏览器中,就像用户在操作一样;我们通常所说的Selenium是对Seleninum的总称。
selenium核心组件
- selenium webdriver client (目前主要使用,依赖于drivers)
- selenium drivers(浏览器驱动,被webdriver client所依赖)
- selenium IDE(入门录制工具)
- selenium grid (可操作浏览器集群,也可操作app)
Selenium WebDriver
selenium webdriver 其实就是不同语言基于实现了W3C WebDriver协议从而达到能控制浏览器的代码库,它提供了简单的API接口使测试人员可以很方便的控制浏览器的各种行为;目前所支持的浏览器包括:Firefox、Chrome、IE、Edge、Opera、Safari。
运行机理:webdriver通过driver(浏览器驱动)将执行命令发送给浏览器;同样的浏览器在执行玩命令之后通过相同的通道将信息返回给webdriver。
整体就是一个C/S架构,我们的webdriver是作为客户端存在。


1、命令:pip install selenium -i <http://pypi.douban.com/simple> --trusted-host pypi.douban.com;
2、下载对应chrome浏览器驱动:http://chromedriver.storage.googleapis.com/index.html
查看本地安装的chrome版本

下载相同版本的驱动


下载完成后解压压缩包,把chromedriver.exe驱动文件复制到,Python根目录下


二、通过python+selenium实现打开一个商城
from selenium import webdriver
import time
driver = webdriver.Chrome()
driver.get(url='<https://mall.jctesting.cn/pc/>')
time.sleep(3)
driver.quit()
options
from selenium import webdriver
from time import sleep
'''
# 创建Chromeoptions对象
options=webdriver.ChromeOptions()
# 窗体最大化,速度比 driver.maximize_window() 快
options.add_argument('start-maximized') #添加参数
# 无头模式:启动浏览器进程,但不会显示出来
# options.add_argument('--headless')
# 去掉警告
# options.add_argument('disable-infobars') #这是老版本的Chrome浏览器采用的去掉警告行驶
# 新版本的去掉警告(70以上版本)
options.add_experimental_option('useAutomationExtension',False) #去掉开发者警告
options.add_experimental_option('excludeSwitches', ['enable-automation']) #去掉黄条
# 创建Chrome对象
driver=webdriver.Chrome(options=options)
driver.implicitly_wait(10)
# driver.maximize_window()
sleep(5)
driver.get('<https://www.baidu.com/>')
driver.find_element_by_id('kw').send_keys('虚竹')
driver.find_element_by_id('su').click()
sleep(3)
# print(driver.title)
driver.quit()
三、一些依赖包的安装
pip install pyscreenshot # 用于屏幕截图
安装pykeyboard模块
pip install Pillow-PIL
pip install pywin32
pip install pyUserinput
pip install pykeyboard