一。selenium
1.定义
selenium 是一个 web 的自动化测试工具 ,因为它相比 QTP 有诸多有点:
1)免费,也不用再为破解 QTP 而大伤脑筋小巧,对于不同的语言它只是一个包而已,而 QTP 需要下载安装1个多 G 的程序。这也是最重要的一点,不管你以前更熟悉 C、 java、ruby、python、或都是 C# ,你都可以通过 selenium 完成自动化测试;
2)QTP 只支持 VBS支持多平台:windows、linux、MAC ;
3)支持多浏览器:ie、ff、safari、opera、chrome支持分布式测试用例的执行,可以把测试用例分布到不同的测试机器的执行,相当于分发机的功能。
2.安装
1)安装selenium
pip install selenium
#已安装过得可以使用如下命令进行更新
pip install -U selenium
2)安装浏览器驱动
注意:
<1>.chrom浏览器服务器在国外,这里推荐淘宝提供得镜像对应安装,其他浏览器自行百度。链接:https://npm.taobao.org/mirrors/chromedriver
<2>.webservice.exe 驱动与chrom浏览器有一定得兼容问题,建议对应版本安装;
3.使用(推荐【引用的链接非原创】:https://blog.csdn.net/xie_0723/article/details/51437650)
from selenium import webdriver
1)简单的操作
#启动谷歌浏览器
driver=webdriver.Chrome()
#打开网址
driver.get("http://www.baidu.com")
#窗口最大化
driver.maximize_window()
#窗口最小化
driver.minimize_window()
#设置窗口大小( width, height)
driver.set_window_size(900,900)
#打开hao123
driver.get("http://hao123.com")
#后退
driver.back()
#前进
driver.forward()
#刷新
driver.refresh()
#退出浏览器
driver.quit()
2)操作二
driver.get("http://baidu.com")
#获取title
print(driver.title)
#获取网页的url
print(driver.current_url)
#获取所有句柄 - - 打开了多少个标签(也就是窗口) 就有多少个元素在列表中
print(driver.window_handles)
#获取当前窗口的句柄
print(driver.current_window_handle)
#获取当前页面的源代码 - - html 进行web自动化的依据
print(driver.page_source)
运行结果:
3)元素定位与操作。元素:指网页页面的一个组件; 定位:查找需要操作的元素的过程 ;常用的有八大元素定位方式
##
driver.get("http://www.baidu.com")
#定位
input_element_id=driver.find_element_by_id("kw")
#输入
input_element_id.send_keys("面如死灰")
运行结果:
定位与操作