简介
Selenium也是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。
就我而言,我看中的功能是,模拟浏览器用户操作以及截图,在一定程度上可以做爬虫,只不过速度非常慢就是了。
环境搭建
pip install Selenium
最简示例
|
|
以上代码的功能是
在Firefox浏览器中打开百度首页
在搜索框中输入”Selenium2”
并且单击搜索按钮
一个模拟登录的例子
|
|
更多详情请查阅参考资料。
chrome驱动安装
https://sites.google.com/a/chromium.org/chromedriver/getting-started
下载相关chrome驱动
下载解压,你会得到一个chromedriver.exe文件,把该文件放到chrome的安装目录下…\Google\Chrome\Application\ ,然后设置path环境变量,把chrome的安装目录(我的:C:\Program Files\Google\Chrome\Application),然后再调用运行。
|
|
后期补充
在此处看到
2017年5月
Chrome开始支持Headless模式
PhantomJS进入淘汰倒计时(部分核心开发者撤离)
使用 Headless Chrome 进行页面渲染
https://zhuanlan.zhihu.com/p/26810049
Splinter
Selenium 库学习笔记 (掘金)
https://juejin.im/entry/59180abc128fe1005cc5b37d
一些基础的 Selenium 的使用知识。 —— 由醋分享
是什么:Splinter是一个自动化测试网络应用的Python库。
为什么需要它: 大家都知道,没有什么比自动化网络应用测试更无聊的事了。有了Splinter,就可以将打开浏览器、输入URL、填写表单、点击按钮等全部操作自动化。
特定的浏览器需要使用相应的驱动器(drivers),不过还好已经自带了Chrome和Firefox驱动器。另外,Splinter还可以通过Selenium Remote来远程控制其他机器上的浏览器。你甚至可以在目标浏览器中手动执行JavaScript代码。
如果你想知道某个浏览器在浏览指定网站时的具体情况,那么Splinter将是一个很有用的工具。如果想了解不依赖浏览器与网站进行交互,可以查看Twill。(译者:Twill是一种脚本语言,支持用户通过命令行浏览网络。)
#参考资料
[1] Python Selenium Bindings 文档
[3] 《selenium私房菜》 (下载地址在[2])
[4] 某自动化测试从业人员的blog
[5] 《Selenium2 Python自动化测试实战(第二版)》
[6] splinter 0.7.3
[7] Apptium Python
[8] 软件测试新趋势
[9] 利用 Python + Selenium 自动化快速截图