安装使用说明.docx
《安装使用说明.docx》由会员分享,可在线阅读,更多相关《安装使用说明.docx(19页珍藏版)》请在冰豆网上搜索。
![安装使用说明.docx](https://file1.bdocx.com/fileroot1/2023-2/23/6bbad165-861f-4391-842a-a656d35511ab/6bbad165-861f-4391-842a-a656d35511ab1.gif)
安装使用说明
Selenium2.0使用说明
目录
第1章Webdirver基础2
1.1 介绍WebDriver2
1.2 安装seleniumwebdriver2
1.2.1安装jdk并配置环境变量2
1.2.2安装Firefox,SeleniumIDE,Firebug和xpahter2
1.2.3安装eclipse2
1.2.4安装seleniumwebdriver2
1.3 工具使用2
1.3.1Selenium-IDE使用2
1.3.2Firebug的使用2
1.3.3xpathchecker的使用2
1.3.4Selenium2.0的使用2
第2章Webdirver对浏览器的支持2
2.1 HtmlUnitDriver2
2.2 FireFoxDriver2
2.3 InternetExplorerDriver2
第3章对浏览器的简单操作2
3.1 用webdriver打开一个浏览器2
3.2 打开测试页面2
3.3 关闭浏览器2
3.4 返回当前页面的url和title2
第4章使用操作2
4.1 如何找到页面元素2
4.1.1ByID2
4.1.2ByName2
4.1.3ByXPATH2
4.1.4ByClassName2
4.1.5ByLinkText2
4.2 如何对页面元素进行操作2
4.2.1输入框(textfieldortextarea)2
4.2.2下拉选择框(Select)2
4.2.3单选项(RadioButton)2
4.2.4多选项(checkbox)2
4.2.5按钮(button)2
4.2.6左右选择框2
4.2.7弹出对话框(Popupdialogs)2
4.2.8表单(Form)2
4.2.9上传文件(UploadFile)2
4.2.10 Windows和Frames之间的切换2
4.2.11 拖拉(DragandDrop)2
4.2.12 导航(NavigationandHistory)2
4.3 高级使用2
4.3.1改变useragent2
4.3.2读取Cookies2
4.3.3调用JavaScript2
4.3.4Webdriver截图2
4.3.5页面等待2
第5章RemoteWebDriver2
5.1 使用RemoteWebDriver2
5.2 SeleniumServer2
5.3 HowtosetFirefoxprofileusingRemoteWebDriver2
第1章Webdirver基础
1.1 介绍WebDriver
Selenium2.0主要的特性就是与WebDriverAPI的集成。
WebDriver旨在提供一个更简单更简洁的编程接口以及解决一些Selenium-RCAPI的限制。
Selenium-Webdriver更好的支持页面本身不重新加载而页面的元素改变的动态网页。
WebDriver的目标是提供一个良好设计的面向对象的API提供了对于现代先进web应用程序测试问题的改进支持。
SeleniumWebdriver支持很多语言,如:
C#,Java,Python,Ruby等,本文使用java。
1.2 安装seleniumwebdriver
1.2.1安装jdk并配置环境变量
jdk安装
jdk需要1.6版本及以上的,安装目录为默认路径。
jdk下载地址:
环境变量配置CLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
JAVA_HOME=C:
\ProgramFiles\Java\jdk1.6.0_10
PATH=%JAVA_HOME%\bin
1.2.2安装Firefox,SeleniumIDE,Firebug和xpahter
安装FireFox
Firefox版本有一定限制,需要和seleniumIDE相匹配。
下载地址:
安装SeleniumIDE
SeleniumIDE是基于FIREFOX浏览器的一个插件,提供GUI界面来运行Selenium测试。
SeleniumIDE提供脚本录制和回放功能,可以将用户在浏览器中执行的操作记录下来,生成各种形式的脚本,可以将这些脚本保存供selenium使用。
SeleniumIDE主要是用在Selenium1.0中,在Selenium2.0中基本不使用。
1)下载SelenimIDE下载地址:
http:
//seleniumhq.org/projects/ide/
2)安装:
直接把下载的SeleniumIDE文件拖到FireFox浏览器窗口中,按提示操作即可安装成功。
安装Firebug
1)打开Firefox浏览器2)点击菜单“工具(T)”,下拉列表中选择“附加组件”。
3)“获取附加组件”4)在搜索里输入“firebug”,稍等即可。
5)点击“添加至Firefox”
6)OK,重启浏览器即可。
安装xpahter
1)打开Firefox浏览器2)点击菜单“工具(T)”,下拉列表中选择“附加组件”。
3)“获取附加组件”4)在搜索里输入“xpahter”,稍等即可。
5)点击“添加至Firefox”
6)OK,重启浏览器即可。
安装xpathchecker
1)打开Firefox浏览器2)点击菜单“工具(T)”,下拉列表中选择“附加组件”。
3)“获取附加组件”4)在搜索里输入“xpathchecker”,稍等即可。
5)点击“添加至Firefox”
6)OK,重启浏览器即可。
1.2.3安装eclipse
安装eclipse,安装在默认安装目录下。
1.2.4安装seleniumwebdriver
1)下载地址:
官方UserGuide:
http:
//seleniumhq.org/docs/
2)下载:
selenium-server-standalone-2.25.0.jar和selenium-java-2.25.0.zip(使用java语言的下载该包)。
3)解压下载的selenium-java-2.25.0.zip文件
1.3 工具使用
1.3.1Selenium-IDE使用
1)Firefox工具栏,打开Selenium-IDE插件,如下图:
2)在“BaseURL”中输入需要录制脚本的网址地址,然后点击界面中右上角红色录制按钮(开始录制、停止录制都是此按钮),如下图。
3)录制完成后,点击回放按钮可以对刚刚录制的脚本进行回放,这里可以调整回放速度。
回放按钮就是上图中的绿色三角按钮。
4)还可以将录制的脚本转换成C#,Java,PHP,Ruby,Prel,Groovy,Python等语言,如下图所示。
转换完以后可以直接复制到Eclipse中使用,在Selenium1.0中稍加修改就可使用,在Selenium2.0则不能直接使用,只能手动编制。
1.3.2Firebug的使用
打开Firebug有两种基本的方法:
1)当需要获取页面上元素的属性时,可以使用Firebug进行获取,例如下图所示输入框:
获取方法:
右击输入框,在菜单中选择“查看元素”
此时将会在页面下方出现该元素的属性,如下图所示:
然后右击“编辑”后面的内容,在菜单中选择“复制xpath”,即可使用。
2)Firebug也可以通过点击Firefox浏览器上的“工具”菜单->“Firebug”->“打开Firebug”进行打开。
1.3.3xpathchecker的使用
元素的属性还可以通过xpathchecker来查看。
对于上面XX输入框的属性可以通过右击并选择菜单中的“viewxpath“按钮
此时会打开如下窗口,“XPath”中的内容就是该输入框的属性,在下面会显示对应的元素。
1.3.4Selenium2.0的使用
1)在Eclipse里新建一个project,然后引用selenium-java-2.25.0.zip解压后的selenium-java-2.25.0.jar。
2)新建一个class“Seleniumcn”把代码贴进去,如果代码没错误就可以运行了。
例如下面:
package辅助测试;
importjava.util.Set;
importorg.openqa.selenium.By;
importorg.openqa.selenium.WebDriver;
importorg.openqa.selenium.WebElement;
importorg.openqa.selenium.firefox.FirefoxDriver;
publicclassSeleniumcn{
publicstaticvoidmain(String[]args){
System.setProperty("javax.xml.parsers.DocumentBuilderFactory","com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl");
WebDriverdriver=newFirefoxDriver();
driver.get(".hk");
WebElementelement=driver.findElement(By.name("q"));
element.sendKeys("helloSelenium!
");
element.submit();
try{
Thread.sleep(3000);
}catch(InterruptedExceptione){
e.printStackTrace();
}
System.out.println("Pagetitleis:
"+driver.getTitle());
driver.quit();
}
}
正常运行后,这几行代码将会打开firefox浏览器,然后转跳到google首页。
在搜索框中输入helloSelenium并提交搜索结果。
等待3秒后会在命令行打印出当前页面的title,输出如下:
Pagetitleis:
helloSelenium!
-Google搜索
并关闭ff浏览器。
第2章Webdirver对浏览器的支持
2.1 HtmlUnitDriver
优点:
HtmlUnitDriver不会实际打开浏览器,运行速度很快。
对于用FireFox等浏览器来做测试的自动化测试用例,运行速度通常很慢,HtmlUnitDriver无疑是可以很好地解决这个问题。
缺点:
它对JavaScript的支持不够好,当页面上有复杂JavaScript时,经常会捕获不到页面元素。
使用:
WebDriverdriver=newHtmlUnitDriver();
2.2 FireFoxDriver
优点:
FireFoxDirver对页面的自动化测试支持得比较好,很直观地模拟页面的操作,对JavaScript的支持也非常完善,基本上页面上做的所有操作FireFoxDriver都可以模拟。
缺点:
启动很慢,运行也比较慢,不过,启动之后Webdriver的操作速度虽然不快但还是可以接受的。
使用:
WebDriverdriver=newFirefoxDriver();
2.3 InternetExplorerDriver
优点:
直观地模拟用户的实际操作,对JavaScript提供完善的支持。
缺点:
是所有浏览器中运行速度最慢的,并且只能在Windows下运行,对CSS以及XPATH的支持也不够好。
使用:
WebDriverdriver=newInternetExplorerDriver();
第3章对浏览器的简单操作
3.1 用webdriver打开一个浏览器
我们常用的浏览器有firefox和IE两种,firefox是selenium支持得比较成熟的浏览器,还支持HtmlUnit浏览器,打开语句为:
打开firefox浏览器:
//CreateanewinstanceoftheFirefoxdriver
WebDriverdriver=newFirefoxDriver();
打开IE浏览器
//CreateanewinstanceoftheInternetExplorerdriver
WebDriverdriver=newInternetExplorerDriver();
打开HtmlUnit浏览器
//CreateanewinstanceoftheInternetExplorerdriver
WebDriverdriver=newHtmlUnitDriver();
3.2 打开测试页面
对页面测试,首先要打开被测试页面的地址(如:
),webdriver提供的get方法可以打开一个页面:
//AndnowusethedrivertovisitGoogle
driver.get("http:
//www.");
3.3 关闭浏览器
测试完成后,需要关闭浏览器
//Closethebrowser
driver.quit();
3.4 返回当前页面的url和title
有时候我们需要返回当前页面的url或者title做一些验证性的操作等。
代码如
下:
//得到title
Stringtitle=driver.getTitle();
//得到当前页面url
StringcurrentUrl=driver.getCurrentUrl();
//输出title和currenturl
System.out.println(title+"\n"+currentUrl);
第4章使用操作
4.1 如何找到页面元素
Webdriver的findElement方法可以用来找到页面的某个元素,最常用的方法是用id和name查找。
下面介绍几种比较常用的方法。
4.1.1ByID
假设页面写成这样:
那么可以这样找到页面的元素:
通过id查找:
WebElementelement=driver.findElement(By.id("passwd-id"));
4.1.2ByName
或通过name查找:
WebElementelement=driver.findElement(By.name("passwd"));
4.1.3ByXPATH
或通过xpath查找:
WebElementelement=driver.findElement(By.xpath("//input[@id='passwd-id']"));
4.1.4ByClassName
假设页面写成这样:
Cheddar