您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 其它办公文档 > pythonselenium自动化入门
Python+selenium自动化测试入门QQ群:456633076Selenium简介Selenium是一款基于web应用程序的开源测试工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。它支持Firefox、ie、Mozilla等众多浏览器。它同时直至JAVA、C#、Ruby、Python、PHP、Perl等众多的主流语言。Selenium简介-特点开源、轻量运行在浏览器中简单灵活、支持很多种语言IED提供录制功能Selenium简介SeleniumCore:支持DHTML的测试案例(效果类似数据驱动测试),它是SeleniumIDE和SeleniumRC的引擎SeleniumIDE:FireFox的一个插件,支持脚本录制。SeleniumRC:SeleniumRemoteControl。后续的系列文章我会主要针对SeleniumRC展开介绍。SeleniumGrid:允许同时并行地、在不同的环境上运行多个测试任务,极大地加快Web应用的功能测试。Selenium简介SeleniumIDE的安装官网的下载路径安装:将这个文件拖入到firefox窗口SeleniumIDE的录制功能如下图启动Firefox工具seleniumIDESeleniumIDE的录制功能点击右侧的红色按钮开始录制。需要注意的是启动seleniumIDE后工具默认的就是开始录制。SeleniumIDE的录制功能打开百度输入”seleniumide”点击查询,整个步骤录制后如下。SeleniumIDE的录制功能可以点击回放一下。脚本回放成功为淡绿色,验证信息回放成功为深绿色SeleniumIDE的录制功能工具默认将操作步骤记录为html格式,点击optionsformat可以选择你要转化的语言。从这儿可以看出selenium的强大之处。SeleniumIDE的录制功能转化之后再source面板可以看到转化后的代码,如右图SeleniumRC的工作原理-RC的组成Seleniumserver的安装和启动官网的下载selenium-server-standalone-2.19.0.jarcmdjava-jarselenium-server-standalone-2.19.0.jar需要javasdkPython自动化安装python2.7将selenium-2.19.1.tar.gz()的selenium目录拷到C:\Python27\Lib\site-packages下录制RFT将所有的页面元素编织成树形的地图,通过键值对来进行精确地定位Selenium则通过元素定位器来获取页面元素。ElementLocatorsid=ididlocators指定HTML中唯一的id元素name=namenamelocators指定HTML中相同的name元素中的第一个元素identifier=ididentifierlocators首先查找HTML中是否存在该id的元素,若不存在,则查找第一个该name的元素ElementLocatorsdom=JavaScriptExpressiondomlocator用JavaScript表达式来定位HTML中的元素,注意必须要以document开头例如:dom=document.forms['myForm'].myDropdowndom=document.images[56]ElementLocatorsxpath=xpathExpressionxpathlocator用XPath表达式来定位HTML中的元素,必须注意要以//开头例如:xpath=//img[@alt='Theimagealttext']xpath=//table[@id='table1']//tr[4]/td[2]ElementLocatorslink=textPatternlinklocator用link来选择HTML中的连接或锚元素例如:link=Thelinktext在没有locator前序的情况下如果以document.开头,则默认是使用domlocator,如果是以//开头,则默认使用xpathlocator,其余情况均认作identifierlocatorElementLocators-xpathXPath使用路径表达式在XML文档中进行导航XPath是一门在XML文档中查找信息的语言XPath包含一个标准函数库XPath是XSLT中的主要元素XPath是一个W3C标准ElementLocators-xpatha)nodename:选取此节点的所有子节点b)/:从根节点选取(绝对路径)c)//:从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置d).:选取当前节点e)..:选取当前节点的父节点f)@:选取属性ElementLocators-xpath?xmlversion=1.0encoding=ISO-8859-1?toolstoolname=“RFT”usename=“functiontest”freeno!/free/usefreeno/free/tooltoolname=“loadrunner”usename=“performancetest”freeno!/free/usefreeno/free/toolElementLocators-xpathtoolname=“selenium”usename=“functiontester”freeyes!/free/usefreeyes/free/tooltoolid=“jmeter”usename=“performancetest”/usefreeyes/free\tool/toolsElementLocators-xpath选出所有的tools所有的子元素/tools/*选出文件中的所有元素//*选出所有的free元素//free注意:这里查找的free元素包括tool和use的子元素ElementLocators-xpath选出tool下的free元素//tools/tool/free选出tools下的第一个tool元素//tools/tool[1]选出tools下的最后一个tool元素//tools/tool[last()]选出free为no的所有的tool元素//tools/tool[free=no]ElementLocators-xpath选出所有含有name属性的tool//tool[@name]选出name属性为selenium的tool//tool[@name=‘selenium’]Firebug+xpathchecker启动Firefox工具附加组件Firebug+xpathchecker启动附加组件后点击获取附件组件,输入firebug回车,选中firebug后点击天机制Firefox。同样的方法添加xpathcheckerFirebug+xpathchecker如右图打开firebug或者直接点击F12打开firebugFirebug+xpathchecker如下图点击按钮后鼠标置于页面处,可迅速定位到页面元素对应的代码Firebug+xpathchecker右键菜单中打开ViewXpathFirebug+xpathchecker如右图所示可以根据firebug中的定位后的代码写出对应页面元素的xpath,然后在xpathchecker中进行检查,若xpath正确则返回对应的页面元素
本文标题:pythonselenium自动化入门
链接地址:https://www.777doc.com/doc-12141 .html