哈喽,各位客官好,今天我给大家讲讲如何使用Python+Selenium做自动化测试,楼主在做开发测试之前做得java开发,由于种种原因,楼主转成了开发测试,接着又自学了脚本语言linux和python,对于这两门脚本,我是非常的喜欢,为什么呢,因为用起来效率太高了,所以楼主弃java转python,至于为什么,不做多解释,你懂得。接下来我将给各位讲讲如何用python+selenium自动化
1,什么是selenium
selenium是一个开源的自动化测试框架,主要适用WEB测试,可以支持多种语言(Java, C#, Python,php等),既然支持多语言开发,那跨平台自然就不用多说啦,selenium有几个版本,一个是selenium IDE(是一个安装在火狐浏览器上的一个插件,可以用来录制脚本,然后导出自动生成对应的开发语言文件),selenium Grid(自动化辅助工具,楼主还没深入研究), seleniun RC(一个远程控制访问从而达到测试目的,有server端和client端),以上是我总结的,具体的定义,各位可以去官网看看,此处不做多解释,我们只需知道它是什么就够了。
2,selenium如何工作
关于selenium如何工作,也是很多小伙伴想知道的,selenium有一个驱动叫webdriver,这是selenium的核心,支持多种浏览器(Firefox, Chrome, Safiri, IE等),Chrome,IE使用时需要额外对应浏览的webdriver驱动器(Iedriver.exe, chromedirver.exe),以下是一个简单的实例:
1 # coding:utf-8 2 3 from selenium import webdriver #导入selenium 4 import time 5 6 browser = webdriver.Chrome(r'C:Python27chromedriver.exe') #加载chrome驱动,创建一个对象 7 8 browser.get('http://www.baidu.com') #获取需要测试Web的地址 9 10 browser.maximize_window()#窗口最大化 11 12 browser.find_element_by_id('kw').send_keys('selenium') #获取网页中的元素 13 14 browser.find_element_by_id('su').click() 15 16 time.sleep(3) 17 18 browser.quit()#关闭驱动对象
看了上面的代码,我们可以知道,selenium主要工作方式是抓取网页中的元素,然后进行相应的赋值,事件等,selenium有多种获取元素的方法,有获取id,name,css,xpath等
3,selenium如何跟python一起使用
我们使用selenium+python肯定不是我们写的以上那么简单的几行代码,在正常的自动化中,为了便于管理维护脚本,一般会使用合适的框架来提高代码的质量和维护成本,关于框架主要有uinittest(python自带的单元测试框架),HTMLTestRunner(主要用户生成测试报告和结果,详细使用各位可以去查阅相关文档),smtplib(邮件包,只要是能将测试结果以邮件的形式发送给pm),除了测试框架,还有关于代码分离,复用等,这一部分不做多详述,主要是环境搭建和架构的东西,下一次有时间再做详细解释。
此篇内容没有什么多大价值,主要是让大家了解selenium跟python自动化的初述,纯属片面之谈,不足之处请下方留言,谢谢!
((文章原创,转载时请注明出处,谢谢!))