zoukankan      html  css  js  c++  java
  • page-object使用(2)---elements

    elements就是html元素下所有的标签。用page-object你可以找到并定位html页面下绝大多数的元素,这个文章列出了可定位的这些元素,生成的方法,和依据什么关键字来找到这些元素。

    BUTTON

    用以下方法声明一个button:

    1 button(:your_name, :id => 'an_id')

    将会生成两个方法,它们是:

    1 your_name             # 点击这个按钮
    2 your_name_element     # 返回这个button元素

    你可以通过一下一种或者几种方法来定位一个button

    • :alt => Watir and Selenium (input type=image only)
    • :class => Watir and Selenium
    • :id => Watir and Selenium
    • :index => Watir and Selenium
    • :name => Watir and Selenium
    • :src => Watir and Selenium (input type=image only)
    • :text => Watir and Selenium
    • :value => Watir and Selenium
    • :xpath => Watir and Selenium

    CELL(td)

    通过一下方法声明一个cell

    1 cell(:your_name, :id => 'an_id')

    将会生成两个方法:

    1 your_name             # 返回这个cell的text
    2 your_name_element     # 返回cell元素

    你可以通过以下一种或者几种方式来定位cell

    • :class => Watir and Selenium
    • :id => Watir and Selenium
    • :index => Watir and Selenium
    • :name => Watir and Selenium
    • :text => Watir and Selenium
    • :xpath => Watir and Selenium

    checkbox

    通过以下方法声明checkbox

    1 checkbox(:your_name, :id => 'an_id')

    将会生成4个方法

    1 check_your_name          # 勾选选择按钮
    2 uncheck_your_name        # 取消勾选按钮
    3 your_name_checked?       # 返回按钮是否被勾选(true or false)
    4 your_name_element        # 返回checkbox元素

    你可以通过以下方式来定义checkbox元素

    • :class => Watir and Selenium
    • :id => Watir and Selenium
    • :index => Watir and Selenium
    • :name => Watir and Selenium
    • :value => Watir and Selenium
    • :xpath => Watir and Selenium

    Div

    可以通过一下方法声明一个div

    1 div(:your_name, :id => 'an_id')

    将会生成两个方法:

    your_name             # 返回div的文本
    your_name_element     # 返回div元素

    你可以通过以下的值来定位一个div

    • :class => Watir and Selenium
    • :id => Watir and Selenium
    • :index => Watir and Selenium
    • :name => Watir and Selenium
    • :text => Watir and Selenium
    • :xpath => Watir and Selenium

    FileField

    你可以用以下方法声明一个filefield

    1 file_field(:your_name, :id => 'an_id')

    将会生成两个方法:

    1 your_name=            # 设置FileField的值
    2 your_name_element     # 返回filefield元素

    你可以用以下方式来定位一个filefield

    • :class => Watir and Selenium
    • :id => Watir and Selenium
    • :index => Watir and Selenium
    • :name => Watir and Selenium
    • :title => Watir and Selenium
    • :xpath => Watir and Selenium

    Form

    1 form(:your_name, :id => 'an_id')

    生成一个方法

    1 your_name_element     # 返回form元素

    定义定位form的方式:

    • :action => Watir and Selenium
    • :class => Watir and Selenium
    • :id => Watir and Selenium
    • :index => Watir and Selenium
    • :xpath => Watir and Selenium

    H1, H2, H3, H4, H5, H5

    1 h1(:your_name, :id => 'an_id')
    2 h2(:your_name, :id => 'an_id')
    3 h3(:your_name, :id => 'an_id')
    4 h4(:your_name, :id => 'an_id')
    5 h5(:your_name, :id => 'an_id')
    6 h6(:your_name, :id => 'an_id')

    生成两个方法

    your_name             # 返回这些标签内的text
    your_name_element     # 返回这些标签元素本身

    可以通过一下方式来定位:

    • :class => Watir and Selenium
    • :id => Watir and Selenium
    • :index => Watir and Selenium
    • :name => Watir and Selenium
    • :text => Watir and Selenium
    • :xpath => Watir and Selenium

    HiddenField <input type ="hidden">

    1 hidden_field(:your_name, :id => 'an_id')

    生成两个方法

    your_name          # 返回HiddenField的value
    your_name_element  # 返回hiddenfield这个元素

    可以通过以下方式定位 

    • :class => Watir and Selenium
    • :css => Watir and Selenium
    • :id => Watir and Selenium
    • :index => Watir and Selenium
    • :name => Watir and Selenium
    • :text => Watir and Selenium
    • :value => Watir and Selenium
    • :xpath => Watir and Selenium

    Image

    image(:your_name, :id => 'an_id')

    生成一个方法

    your_name_element     # 返回image元素

    可通过以下方式定位

    • :alt => Watir and Selenium
    • :class => Watir and Selenium
    • :id => Watir and Selenium
    • :index => Watir and Selenium
    • :name => Watir and Selenium
    • :src => Watir and Selenium
    • :xpath => Watir and Selenium

    Link

    link(:your_name, :id => 'an_id')

    生成两个方法

    your_name          # 点击这个连接
    your_name_element  # 返回link元素

    可通过一下方式定位link

    • :class => Watir and Selenium
    • :href => Watir and Selenium
    • :id => Watir and Selenium
    • :index => Watir and Selenium
    • :link => Watir and Selenium
    • :link_text => Watir and Selenium
    • :name => Watir and Selenium
    • :text => Watir and Selenium
    • :xpath => Watir and Selenium

    ListItem   

    对应html的li

    list_item(:your_name, :id => 'an_id')

    生成两个方法

    your_name             # 返回li内的text
    your_name_element     # 返回li元素

    可通过一下方式定位li

    • :class => Watir and Selenium
    • :id => Watir and Selenium
    • :index => Watir and Selenium
    • :name => Watir and Selenium
    • :xpath => Watir and Selenium

    OrderedList

    对应html里的<ol>

    ordered_list(:your_name, :id => 'an_id')

    生成两个方法

    your_name             # 返回ol内包含的text
    your_name_element     # 返回ol元素

    可通过以下方式来定位

    • :class => Watir and Selenium
    • :id => Watir and Selenium
    • :index => Watir and Selenium
    • :name => Watir and Selenium
    • :xpath => Watir and Selenium

    Paragraph

    对应html中的P

    paragraph(:your_name, :id => 'an_id')

    两个方法被生成

    your_name          # 返回p内的text
    your_name_element  # 返回p元素

    可通过以下元素来定位P

    • :class => Watir and Selenium
    • :id => Watir and Selenium
    • :index => Watir and Selenium
    • :name => Watir and Selenium
    • :xpath => Watir and Selenium

    RadioButton

    radio_button(:your_name, :id => 'an_id')

    生成4个方法

    select_your_name          # 选择该单选按钮
    clear_your_name           # 取消勾选该单选按钮
    your_name_selected?       # 返回该按钮被勾选的状态(true or false)
    your_name_element         # 返回radiobutton元素

    可通过以下方式来定位

    • :class => Watir and Selenium
    • :id => Watir and Selenium
    • :index => Watir and Selenium
    • :name => Watir and Selenium
    • :xpath => Watir and Selenium

    SelectList (Dropdown)

    select_list(:your_name, :id => 'an_id')

    4个方法被生成

    your_name          # 返回下拉列表中的文本
    your_name=         # 选中下拉列表
    your_name_element  # 返回该列表元素
    your_name_options  # returns an array of available values to pick from in the SelectList(将selecelist中各个选项中的文本返回一个数组,ps:不知是否翻译的正确。。)

    自 0.6.3版本后, 实际返回的不是value,是text

    可以通过一下方式来定位:

    • :class => Watir and Selenium
    • :id => Watir and Selenium
    • :index => Watir and Selenium
    • :name => Watir and Selenium
    • :text => Watir only
    • :value => Watir only
    • :xpath => Watir and Selenium

    Span

    span(:your_name, :id => 'an_id')

    两个方法被生成

    your_name             # 返回span元素内的text
    your_name_element     # 返回span元素

    可以通过以下方式来定位span

    • :class => Watir and Selenium
    • :id => Watir and Selenium
    • :index => Watir and Selenium
    • :name => Watir and Selenium
    • :xpath => Watir and Selenium

    Table

    table(:your_name, :id => 'an_id')

    两个方法被生成:

    your_name             # 返回table内包含的text
    your_name_element     # 返回table元素

    可通过以下元素来定位table

    • :class => Watir and Selenium
    • :id => Watir and Selenium
    • :index => Watir and Selenium
    • :name => Watir and Selenium
    • :xpath => Watir and Selenium

    TableCell

    cell(:your_name, :id => 'an_id')

    两个方法被生成:

    your_name          # 返回tablecell的text
    your_name_element  # 返回tablecell元素

    可通过以下方式来定位

    • :class => Watir and Selenium
    • :id => Watir and Selenium
    • :index => Watir and Selenium
    • :name => Watir and Selenium
    • :text => Watir and Selenium
    • :xpath => Watir and Selenium

    TextArea

    text_area(:your_name, :id => 'an_id')

    三个方法被生成

    your_name          # 返回textarea内的value值
    your_name=         # 设置textarea的value
    your_name_element  # 返回textarea元素

    可以通过以下方式来定位textarea

    • :class => Watir and Selenium
    • :css => Watir and Selenium
    • :id => Watir and Selenium
    • :index => Watir and Selenium
    • :name => Watir and Selenium
    • :xpath => Watir and Selenium

    TextField

    text_field(:your_name, :id => 'an_id')

    三个方法被生成

    your_name          # 返回textfield内的值
    your_name=         # 设置textfield的值
    your_name_element  # 返回textfield元素

    可以通过以下方式来定位

    • :class => Watir and Selenium
    • :css => Watir and Selenium
    • :id => Watir and Selenium
    • :index => Watir and Selenium
    • :name => Watir and Selenium
    • :text => Watir only
    • :title => Watir only
    • :value => Watir only
    • :xpath => Watir and Selenium

    UnorderedList

    对应html元素的ul

    unordered_list(:your_name, :id => 'an_id')

    两个方法被生成

    your_name             # 返回ul内包含的text
    your_name_element     # 返回ul元素

    可通过以下方式来定位

    • :class => Watir and Selenium
    • :id => Watir and Selenium
    • :index => Watir and Selenium
    • :name => Watir and Selenium
    • :xpath => Watir and Selenium
  • 相关阅读:
    一个模式的四个基本要素
    【原】基础篇:第一篇,本节主要向大家介绍Ext的最基础的话题
    一些基本的设计模式
    沈老板位置
    977
    设计模式的原则
    hash算法的介绍 【清晰易懂】
    字符编码知识:Unicode、UTF8、ASCII、GB2312等编码之间是如何转换的?
    字符编码知识:Unicode、UTF8、ASCII、GB2312等编码之间是如何转换的?
    vbs生成域账号
  • 原文地址:https://www.cnblogs.com/hyzs25/p/3178488.html
Copyright © 2011-2022 走看看