您的位置:软件测试 > 开源软件测试 > 开源功能测试工具 > Selenium
Selenium私房菜系列全集
作者:网络转载 发布时间:[ 2013/3/28 13:48:19 ] 推荐标签:

Selenium API参考手册

Commands (命令)

    Action
    对当前状态进行操作
    失败时,停止测试
    Assertion
    校验是否有产生正确的值
    Element Locators
    指定HTML中的某元素
    Patterns
    用于模式匹配

1. 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
    在没有locator前序的情况下 Without a locator prefix, Selenium uses:
    如果以"document."开头,则默认是使用 dom locator,如果是以"//"开头,则默认使用xpath locator,其余情况均认作identifier locator

2. String Matching Patterns (字符串匹配模式)

    glob:patthern
    glob模式,用通配符"*"代表任意长度字符,"?"代表一个字符
    regexp:regexp
    正则表达式模式,用JavaScript正则表达式的形式匹配字符串
    exact:string
    精确匹配模式,精确匹配整个字符串,不能用通配符
    在没有指定字符串匹配前序的时候,selenium 默认使用golb 匹配模式

3. Select Option Specifiers (Select选项指定器)

    label=labelPattern
    通过匹配选项中的文本指定选项
    例如:label=regexp:^[Oo]ther
    value=valuePattern
    通过匹配选项中的值指定选项
    例如:value=other
    id=id
    通过匹配选项的id指定选项
    例如: id=option1
    index=index
    通过匹配选项的序号指定选项,序号从0开始
    例如:index=2
    在没有选项选择前序的情况下,默认是匹配选项的文本

Actions

描述了用户所会作出的操作。
Action 有两种形式: action和actionAndWait, action会立即执行,而actionAndWait会假设需要较长时间才能得到该action的相响,而作出等待,open则是会自动处理等待时间。

    click
    click(elementLocator)
    - 点击连接,按钮,复选和单选框
    - 如果点击后需要等待响应,则用"clickAndWait"
    - 如果是需要经过JavaScript的alert或confirm对话框后才能继续操作,则需要调用verify或assert来告诉Selenium你期望对对话框进行什么操作。
    click  aCheckbox  
    clickAndWait  submitButton  
    clickAndWait  anyLink  
    open
    open(url)
    - 在浏览器中打开URL,可以接受相对和路径两种形式
    - 注意:该URL必须在与浏览器相同的安全限定范围之内
    open  /mypage  
    open  http://localhost/
    type
    type(inputLocator, value)
    - 模拟人手的输入过程,往指定的input中输入值
    - 也适合给复选和单选框赋值
    - 在这个例子中,则只是给钩选了的复选框赋值,注意,而不是改写其文本
    type  nameField  John Smith
    typeAndWait  textBoxThatSubmitsOnChange  newValue
    select
    select(dropDownLocator, optionSpecifier)
    - 根据optionSpecifier选项选择器来选择一个下拉菜单选项
    - 如果有多于一个选择器的时候,如在用通配符模式,如"f*b*",或者超过一个选项有相同的文本或值,则会选择第一个匹配到的值
    select   dropDown  Australian Dollars
    select   dropDown  index=0
    selectAndWait  currencySelector  value=AUD
    selectAndWait  currencySelector  label=Auslian D*rs
     goBack,close
    goBack()
    模拟点击浏览器的后退按钮
    close()
    模拟点击浏览器关闭按钮
    selectWindow
    select(windowId)
    - 选择一个弹出窗口
    - 当选中那个窗口的时候,所有的命令将会转移到那窗口中执行
    selectWindow  myPopupWindow  
    selectWindow  null  
    pause
    pause(millisenconds)
    - 根据指定时间暂停Selenium脚本执行
    - 常用在调试脚本或等待服务器段响应时
    pause  5000  
    pause  2000  
    fireEvent
     fireEvent(elementLocatore,evenName)
    模拟页面元素事件被激活的处理动作
    fireEvent  textField  focus
    fireEvent  dropDown  blur
    waitForCondition
    waitForCondition(JavaScriptSnippet,time)
    - 在限定时间内,等待一段JavaScript代码返回true值,超时则停止等待
    waitForCondition  var value=selenium.getText("foo"); value.match(/bar/);  3000
    waitForValue
    waitForValue(inputLocator, value)
    - 等待某input(如hidden input)被赋予某值,
    - 会轮流检测该值,所以要注意如果该值长时间一直不赋予该input该值的话,可能会导致阻塞
    waitForValue  finishIndication  isfinished
          
    store,stroreValue
    store(valueToStore, variablename)
    保存一个值到变量里。
    该值可以由自其他变量组合而成或通过JavaScript表达式赋值给变量
    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(elementLocator, variablename)
    把指定元素的文本值赋予给变量
    storeText  currentDate  expectedStartDate
    verifyValue  startDate  $.{expectedStartDate}

上一页12345678910下一页
软件测试工具 | 联系我们 | 投诉建议 | 诚聘英才 | 申请使用列表 | 网站地图
沪ICP备07036474 2003-2017 版权所有 上海泽众软件科技有限公司 Shanghai ZeZhong Software Co.,Ltd