Selenium RC使用技巧_v1.0_夏辉.doc
文本预览下载声明
PAGE
PAGE 3
Selenium RC使用技巧
版本:V1.0
日期:2008-
作者:夏辉( HYPERLINK mailto:xiahui_1@163.com xiahui_1@163.com)
本文档所有例子,请参照”jspNews”项目。
1、HTML元素定位
描述分为以下五种方式:
1、以ID号定位
selenium.click(“id=idOfThing”);
2、以名称定位
selenium.click(“name=nameOfThing”);
3、以Xpath定位,Xpath是一套标准规范
selenium.click(“xpath=//img[@alt=The image alt text]”);
4、以DOM定位
selenium.click(“dom=document.images[56]” );
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=1name=
index=1
name= leftFrame
index=0 name= topFrame
index=2
index=2
name= rightFrame
当显示index.html时,可以通过下列语句判断是否是index.html网页:
this.sel.open(http://localhost:8080/jspNews);
org.junit.Assert.assertEquals(testone, this.sel.getTitle());
具体参见:IndexTest.java - testIndexPageExist()
2.2 获取当前frameset中子网页
用户可以通过当前frameset网页获取其中的子网页,代码如下:
this.sel.selectFrame(index=1);
或者
this.sel.selectFrame(leftFrame );
例如:查看用户是否已登录
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);
//选择index=1的子网页,即frameset=leftFrame区的网页
this.sel.selectFrame(index=1);
//判断该网页的标题是否是leftwindow
org.junit.Assert.assertEquals(leftwindow,this.sel.getTitle());
具体参见:IndexTest.java - testLoginSuccess ()
2.3 从framework中的子网页跳到主网页
如果用户使用了
this.sel.selectFrame(index=1);
从默认的主网页跳转到了子网页,那么可以通过下列语句返回到主网页。
this.sel.selectFrame(relative=parent);
3. html文本框操作技巧
3.1 模拟输入文本,并判定
//对文本框赋值
this.sel.type(name=Tname,夏天);
//将文本框的值赋给textValue
String textValue=this.sel.getValue(name=Tname);
org.junit.Assert.assertEquals( 夏天, textValue);
具体参见:formExampleTest.java - testtextFrame ()
4. html下拉列表框操作技巧
4.1 判断下拉框的所有数据项是否和期望相同
首先建立期望的数据项,如下所示:
String[] expectProfessions=new String[3];
expectProfessions[0]=计算机;
expectProfessi
显示全部