ImageVerifierCode 换一换
格式:DOC , 页数:14 ,大小:138.50KB ,
资源ID:3552725      下载积分:20 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-3552725.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Selenium_RC使用技巧_v1.0.doc)为本站会员(hw****26)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

Selenium_RC使用技巧_v1.0.doc

1、1Selenium RC 使用技巧版本:V1.0日期:2008-8-5作者:夏辉 (xiahui_)2本文档所有例子,请参照”jspNews” 项目。1、HTML 元素定位描述分为以下五种方式:1、以 ID 号定位selenium.click(“id=idOfThing”);2、以名称定位 selenium.click(“name=nameOfThing”); 3、以 Xpath 定位,Xpath 是一套标准规范selenium.click(“xpath=/imgalt=The image alt text”); 4、以 DOM 定位selenium.click(“dom=document.i

2、mages56” ); 5、以 link 方式定位selenium.click(“link=Test Page For Selenium”); 6、以 CSS 方式定位selenium.click(“css=span#firstChild”); 2. frameset 操作技巧2.1 获取当前 frameset 网页比如当前网页(index.html) 是 frameset 网页,frameset 布局如下:当显示 index.html 时,可以通过下列语句判断是否是 index.html 网页:this.sel.open(“http:/localhost:8080/jspNews“);ind

3、ex=2name= rightFrameindex=0 name= topFrameindex=1name= leftFrame3org.junit.Assert.assertEquals(“testone“, this.sel.getTitle();具体参见:IndexTest.java - testIndexPageExist()2.2 获取当前 frameset 中子网页用户可以通过当前 frameset 网页获取其中的子网页,代码如下:this.sel.selectFrame(“index=1“);或者this.sel.selectFrame(“leftFrame “);例如:查看用户

4、是否已登录leftFrame 首先显示的是登录网页(login.jsp),如果用户输入正确的用户名和密码,则leftFrame 显示该用户的功能操作网页(left.html)。/首先显示index.html 网页this.sel.open(“http:/localhost:8080/jspNews“);/输入用户名和密码sel.type(“name=name“, “admin“);sel.type(“name=pwd“, “123456“);/模拟点击确定按钮sel.click(“name=btnsub“);/最多等待10秒sel.waitForPageToLoad(“10000“);/选择i

5、ndex=1的子网页,即frameset=leftFrame区的网页this.sel.selectFrame(“index=1“);/判断该网页的标题是否是leftwindoworg.junit.Assert.assertEquals(“leftwindow“,this.sel.getTitle();具体参见:IndexTest.java - testLoginSuccess ()2.3 从 framework 中的子网页跳到主网页如果用户使用了this.sel.selectFrame(“index=1“);从默认的主网页跳转到了子网页,那么可以通过下列语句返回到主网页。this.sel.se

6、lectFrame(“relative=parent“);43. html 文本框操作技巧3.1 模拟输入文本,并判定/对文本框赋值this.sel.type(“name=Tname“,“夏天“);/将文本框的值赋给textValueString textValue=this.sel.getValue(“name=Tname“);org.junit.Assert.assertEquals( “夏天“, textValue);具体参见:formExampleTest.java - testtextFrame ()4. html 下拉列表框操作技巧4.1 判断下拉框的所有数据项是否和期望相同首先建

7、立期望的数据项,如下所示:String expectProfessions=new String3;expectProfessions0=“计算机“ ;expectProfessions1=“文学“ ;expectProfessions2=“数学“ ;再从当前网页的下拉框中读取所有的数据项:String actualProfessions=this.sel.getSelectOptions(“profession“);利用 junit4 独有的数组判定函数进行比较org.junit.Assert.assertArrayEquals(“下拉框出错“ , expectProfessions, ac

8、tualProfessions);具体参见:formExampleTest.java - testSelectFrame ()4.2 模拟用户选择一个数据项,并判定首先模拟用户选择一个数据项,如下所示:/将名为 profession 的下拉框,选择第一个数据项this.sel.select(“name=profession“, “index=1“);1、网页不提交,判定模拟选择的数据项的名字String selectName=sel.getSelectedLabel(“name=profession“);org.junit.Assert.assertEquals(“文学“ , selectNa

9、me);2、网页不提交,判定模拟选择的数据项的值String selectName=sel.getSelectedValue(“name=profession“);5org.junit.Assert.assertEquals(“文学“ , selectName);3、网页提交后,判定模拟选择的数据项的值this.sel.click(“btnSub“);this.sel.waitForPageToLoad(“5000“);org.junit.Assert.assertTrue(“下拉框没有选择 文学“, this.sel.isTextPresent(“文学-2“ );具体参见:formExamp

10、leTest.java - testSelectFrame ()5. html 复选框操作技巧5.1 模拟选中一个复选框,并判定首先模拟用户选中复选框,并判定/模拟用户选中数据项-体育this.sel.check(“name=Tch1“);/判定是否选中boolean selected=this.sel.isChecked(“name=Tch1“);org.junit.Assert.assertEquals(true, selected);具体参见:formExampleTest.java - testCheckbox()5.2 模拟取消选中一个复选框,并判定首先模拟用户选中复选框,再模拟取消

11、选中,并判定/模拟用户选中数据项-体育this.sel.check(“name=Tch1“);/模拟用户取消选中数据项-体育this.sel.uncheck(“name=Tch1“);/判定是否选中boolean selected=this.sel.isChecked(“name=Tch1“);org.junit.Assert.assertEquals(false, selected);具体参见:formExampleTest.java - testCheckbox()6. html 列表框操作技巧6.1 判断列表框的所有数据项是否和期望相同首先建立期望的数据项,如下所示:String exp

12、ectSports=new String3;6expectSports0=“羽毛球“;expectSports1=“乒乓球“;expectSports2=“篮球“;再从当前网页的列表框中读取所有的数据项:String actualSports=this.sel.getSelectOptions(“sport“);利用 junit4 独有的数组判定函数进行比较org.junit.Assert.assertArrayEquals(“下拉框出错“ , expectProfessions, actualProfessions);注意:expectSports数组中元素的顺序必须和网页上的顺序一致,否则

13、出错具体参见:formExampleTest.java - testListFrame ()6.2 判断列表框是否有数据被选中/判断列表框是否有数据被选中org.junit.Assert.assertFalse(this.sel.isSomethingSelected(“name=sport“);6.3 模拟用户选择多个数据项,并判定模拟用户选择数据项有二种方式:this.sel.addSelection(“name=sport“, “index=0“);this.sel.addSelection(“name=sport“, “label=乒乓球“);建立期望的数据项,如下所示:String

14、expectSports=new String2;expectSports0=“羽毛球“;expectSports1=“乒乓球“;判定期望结果与实际结果是否一致,有二种方式:第一种方式/读取选中的数据项String selectValues = this.sel.getSelectedLabels(“name=sport“);org.junit.Assert.assertArrayEquals(“列表框出错“ , expectSports,selectValues);第二种方式/期望结果初始化String expectSports=new String2;expectSports0=“1“;e

15、xpectSports1=“2“;/读取选中的数据项String selectValues = this.sel.getSelectedValues(“name=sport“);7org.junit.Assert.assertArrayEquals(“列表框出错“ ,expectSports, selectValues);7. html 单选按钮操作技巧7.1 判定是否有单选按钮被选中/判定是否有单选项选中-第一种方法boolean selected=this.sel.isChecked(“name=Tsex“);org.junit.Assert.assertEquals(true, sele

16、cted);/判定是否有单选项选中-第二种方法String selectedValue =this.sel.getValue(“name=Tsex“);org.junit.Assert.assertEquals(“on“, selectedValue);具体参见:formExampleTest.java - testRadio()7.2 模拟用户选中一个数据项,并判定首先模拟用户选中一个单选按钮,并判定/模拟用户选中单选项-女,并判定this.sel.check(“name=Tsex value=女“);boolean selected=this.sel.isChecked(“name=Tse

17、x value=女“ );org.junit.Assert.assertEquals(true, selected);具体参见:formExampleTest.java - testRadio()8. 验证技巧8.1 判断页面是否存在一个元素只需打开网页,利用下列语句进行判定,比如验证文本框是否存在/验证文本框-姓名 是否存在org.junit.Assert.assertTrue(this.sel.isElementPresent(“name=Tname“);具体参见:formExampleTest.java - testIsExist()8.2 处理 js 的 Alert 提示例:比如有一个

18、文本框用来输入年龄,现通过 javascript 的 onBlur 事件来检查输入的数据是否是数字,如果不是,用 alert,显示“请输入数字内容 ”。1、利用 focus()确定当前网页焦点,输入数据8/找到文本框-年龄,此语句必不可少this.sel.focus(“name=age“);/ 对文本框赋值this.sel.type(“name=age“, “汉字 233“);2、将焦点转移/将焦点跳转到文本框-姓名时,利用onblue事件自动检查年龄this.sel.focus(“name=Tname“);3、验证是否出现 alert,如果出现,抓住后处理if(this.sel.isAler

19、tPresent()org.junit.Assert.assertEquals(“请输入数字内容“, this.sel.getAlert();elseorg.junit.Assert.fail();具体参见:formExampleTest.java - testAlert()newWindowTest.java - testAlert()注意:getAlert()作用是返回警告窗口内的警告内容,并且模拟用户点击” 确定”。Alert 函数只能处理一次,即不能出现两次 getAlert,否则第二次调用 getAlert 失败8.3 处理 js 的 confirm 提示当 selenium 处理

20、js 的 confirm()时,默认自动模拟选择”确定” 按钮,如果用户想自动模拟选择”取消 ”按钮,可使用 chooseCancelOnNextConfirmation/如果不使用chooseCancelOnNextConfirmation语句,模拟用户点击“确定“ ,否则模拟用户点击“取消“/this.sel.chooseCancelOnNextConfirmation();this.sel.focus(“name=btnsm2“);this.sel.click(“name=btnsm2“);/ 由于点击“取消“,窗体弹出一个alert,所以这里进行判断if (!this.sel.isAl

21、ertPresent() org.junit.Assert.assertEquals(“表单例子“, this.sel.getTitle(); else org.junit.Assert.assertEquals(“你按了取消,那就是返回false“ , this.sel.getAlert();具体参见:newWindowTest.java - testConfirm()98.4 处理 js 的 prompt 提示如果 js 中包含 prompt(),则可使用 answerOnNextPrompt 模拟用户输入this.sel.open(“http:/localhost:8080/jspNew

22、s/NewWindow.html“);/使用answerOnNextPrompt 模拟用户输入this.sel.answerOnNextPrompt(“北京“ );this.sel.focus(“name=btnsm3“);this.sel.click(“name=btnsm3“);/ 自动模拟点击“确定 “,窗体弹出一个alert,所以这里进行判断if (this.sel.isAlertPresent() org.junit.Assert.assertEquals(“欢迎您:北京“, this.sel.getAlert(); else org.junit.Assert.fail();具体参见

23、:newWindowTest.java - testPromt()8.5 验证 html 元素的属性我们可以通过 ID 号、name 或数组方式获取 html 元素的属性/ 验证属性|id1class|a1org.junit.Assert.assertEquals(“a1“, this.sel.getAttribute(“id1class“);/ 验证属性|name1class|a2org.junit.Assert.assertEquals(“a2“,this.sel.getAttribute(“name1class“);/ 以数组方式验证属性|document.links1class|a2o

24、rg.junit.Assert.assertEquals(“a2“,this.sel.getAttribute(“document.links1class“);具体参见:AttributeTest.java - testAttribute ()9. 弹出窗体9.1 判断是否存在弹出窗体模拟用户单击 button 按钮,触发 jsfunction openWindow() var refmyPopWindow=window.open(./test_select_window_popup.html, myPopupWindowTitle, height=200,width=500,top=400,

25、left=50);弹出一个窗体10JS 中的 open 函数:第一个参数:网址第二个参数:新网页的名称第三个参数:网页的状态,比如大小,界面等返回值:新窗体的引用测试是否弹出窗体代码如下:this.sel.open(“http:/localhost:8080/jspNews/test_select_window.html“);/ 点击按钮,用js的window.open弹出一个窗体this.sel.click(“popupPage“);/ 等待5秒,弹出名为 myPopupWindow的窗体this.sel.waitForPopUp(“myPopupWindowTitle“, “5000“);

26、/ 将弹出的窗体设置为当前窗体this.sel.selectWindow(“myPopupWindowTitle“);/ this.sel.selectWindow(“弹出的窗体“);org.junit.Assert.assertEquals(“http:/localhost:8080/jspNews/test_select_window_popup.html“,this.sel.getLocation();说明:selectWindow 函数第一个参数:可以是窗体的名称,比如 myPopupWindowTitle;可以是窗体 title,比如弹出的窗体; 具体参见:popWindowTest

27、.java - testIsExistPopWindow ()9.2 测试关闭弹出的子窗体,并将子窗体的值传给父窗体模拟用户单击 button 按钮,触发 js 的 open(),打开子窗体。在子窗体的文本框内输入数据,模拟用户点击关闭按钮,将子窗体中文本框的值传给父窗体this.sel.click(“popupPage“);/ 等待5秒,弹出名为 myPopupWindow的窗体this.sel.waitForPopUp(“myPopupWindowTitle“, “5000“);/ 将弹出的子窗体设置为当前窗体this.sel.selectWindow(“弹出的窗体“);/ 对子窗体文本框赋值this.sel.type(“name=txtchildname“, “夏天“ );/点击子窗体的关闭按钮this.sel.click(“id=btnClosePage“);/将当前窗体设置为父窗体

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。