做 web 项目,测试是无法避免的。对于某些特定功能,采用单元测试就行。但如果想对网站进行整体测试,人工点击测试可行但有点累,如果能借助自动化测试工具就更好了。selenium 就是一款能满足这样要求的测试工具,selenium 是一款用于 web 应用程序测试的工具。测试是直接运行在浏览器中,就像真正的用户在操作一样。下面是 selenium 环境搭建记录。
1、安装python3.7.2
本人使用的是 windows 操作系统,下载 MSI 文件,一直下一步安装即可,这里不赘述。下载地址如下:
代码语言:javascript复制https://www.python.org/downloads/windows/
2、安装 selenium
如果下载的是老版本 python,需另安装 pip,python3.5 自带 pip。
代码语言:javascript复制pip install Selenium
3、安装浏览器驱动
selenium 自带 firefox 浏览器驱动,本人使用的是 chrome,所以需要下载安装 chromedriver,chromedriver 下载地址如下:
代码语言:javascript复制http://npm.taobao.org/mirrors/chromedriver/
注意下载相应浏览器版本的 chromedriver,如果版本不对应,后面的测试 selenium 是没办法启动 chrome 浏览器的。下面给出部分版本的对应关系,更多的对应关系可以去官网上查询
chrome | chromedriver |
---|---|
69-71 | 2.43 |
68-70 | 2.42 |
67-69 | 2.41 |
66-68 | 2.40 |
4、安装 python IDE 编辑工具,本人使用的是 pycharm 社区版
代码语言:javascript复制https://www.jetbrains.com/pycharm/download/#section=windows
5、在 pycharm 中 配置 python 安装路径
代码语言:javascript复制file->Settings->Project->project interpreter
6、编写测试脚本
代码语言:javascript复制 1 from selenium import webdriver
2 import time
3
4 # 指定 chromedriver 的物理路径
5 path = "D:developpython3chromedriver.exe"
6 browser = webdriver.Chrome(executable_path=path)
7
8 # 打开网页
9 browser.get("http://www.baidu.com")
10 input_str = browser.find_element_by_id('kw')
11 input_str.send_keys("ipad")
12 time.sleep(1)
13
14 button = browser.find_element_by_id('su')
15 button.click()
16 time.sleep(2)
17
18 search_str = browser.find_elements_by_link_text('iPad_百度百科')
19 search_str[0].click()
20 time.sleep(10)
21
22 # 关闭浏览器
23 browser.close()
一个简单的打开百度网,搜索 iPad,点击进入 iPad 百度百科词条脚本就完成了,运行下吧,看看效果。