Selenium参考手册
1.commands(命令)
Actions(对当前状态进行操作,失败时,停止测试)
Assertion(检验是否有产生正确的值)
Element Locators(指定HTML中的元素)
Patterns(用于模式匹配)
2.Element Locators (元素定位器)
id=id
id locator 指定HTML 中的唯一id 的元素
name=name
name locator 指定HTML 中相同name 的元素中的第一个元素
identifier=id
identifier locator 首先查找HTML 是否存在该id 的元素, 若不存在,查找第一个该name 的元素
dom=javascriptExpression
dom locator 用JavaScript 表达式来定位HTML 中的元素,注意必须要以”document”开头
例如:
dom=document.forms['myForm'].myDropdown
dom=document.images[56]
xpath=xpathExpression
xpath locator 用XPath 表达式来定位HTML 中的元素,必须注意要以”//”开头
例如:
xpath=//img[@alt='The image alt text']
xpath=//table[@id='table1']//tr[4]/td[2]
link=textPattern
link locator 用link 来选择HTML 中的连接或锚元素
例如:
link=The link text
3.Actions
有两种形式=action + actionAndWait
action 会立即执行,而actionAndWait 会假设需要较长时间才能得到该action
的相响,而作出等待,open 则是会自动处理等待时间
click
—点击链接、按钮、复选框、单选框
—如果点击后需要等待,则选择 ”clickAndWait“
—如果是需要经过JS的alert或confirm对话框才能继续操作,则需要调用verify 或 assert来告诉Selenium你期望对话框进行什么操作。
click aCheckbox
clickAndWait submitButton
clickAndWait anyLink
open
—在浏览器中打开URL,可以接受相对和绝对路径两种形式
—注意:该URL 必须在与浏览器相同的安全限定范围之内
open /mypage
open http://localhost/
type
—模拟人手的输入过程,往指定的input中输入值
—也可以给复选、单选框赋值
—- 在这个例子中,则只是给钩选了的复选框赋值,注意,而不是改写其文本
type nameField John Smith
typeAndWait textBoxThatSubmitsOnChange newValue
select
—根据optionSpecifier选择器来选择一个下拉菜单的选项。
—如果有多个选择器的时候或者超过一个选项有相同的文本或值,则会选择第一个匹配到的值。
select dropDown Australian Dollars
select dropDown index=0
selectAndWait currencySelector value=AUD
selectAndWait currencySelector label=Auslian D*rs
goBack,close
goBack()
模拟点击浏览器的后退按钮
close()
模拟点击浏览器关闭按钮
selectWindow
—选择一个弹出的窗口
—当选中那个窗口的时候,所有的命令将会转移到那窗口中执行
selectWindow myPopupWindow
selectWindow null
pause
—根据指定时间暂停Selenium脚本执行
—常用在脚本或等待服务器端响应时间
pause 5000
payse 2000
fireEvent
模拟页面元素时间被激活的处理动作
fireEvent textField focus
fireEvent dropDown blur
waitForCondition
—在限定的时间内,等待一段JS代码返回true的值,超时则停止等待。
waitForCondition
var value=selenium.getText("foo"); value.match(/bar/); 3000
waitForValue
—等待某个input被赋予某值
—会轮流检测该值,如果长时间没有被赋予值,可能导致阻塞。
waitForValue finishIndication isfinished
store,stroreValue
—保存一个值到变量里,该值可以由其他变量组合而成or通过JS表达式赋值给变量。
store Mr John Smith fullname
store $.{title} $.{firstname} $.{suname} fullname
store javascript.{Math.round(Math.PI*100)/100} PI
storeValue inputLocator variableName
—把指定的input中的值保存到变量中
storeValue userName userID
type userName $.{userID}
storeText, storeAttribute
—把指定元素的文本值赋给变量
storeText currentDate expectedStartDate
verifyValue startDate $.{expectedStartDate}
4.Assertions
允许用户去检查当前状态,两种模式Assert+Verify
当Assert失败,退出测试;当Verify失败,测试会继续运行。
assertLocation, assertTitle
assertLocation(relativeLocation)