zoukankan      html  css  js  c++  java
  • Web自动化基础分享

    一、Selenium 简介

    Selenium 是 ThoughtWorks 专门为 Web 应用程序编写的一个验收测试工具。

    与其他测试工具相比,使用 Selenium 的最大好处是: Selenium 测试直接在浏览器中运行,就像真实用户所做的一样。

    Selenium 测试可以在 Windows、Linux 上的 Internet Explorer、Mozilla 和 Firefox 中运行。其他测试工具都不能覆盖如此多的平台。

    RFS=Robot Framework + Selenium

    二、环境搭建

    1.安装Python,推荐使用ActivePython-2.7

    2.安装wxPython2.8

    3.pip install robotframework

    4.pip install robotframework-ride

    5.pip install robotframework-selenium2library

    浏览器driver:
    http://code.google.com/p/selenium/downloads/list

    三、Firebug安装

    image

    四、RFS基本使用

    1.元素定位

    image

    ①定位中的注意事项:

    有时,需要先进入一个frame或iframe再定位一个元素,这样效率更高,可以使用如下两个关键字。

    进入一个frame或iframe

    Select Frame | locator

    回到最上层frame或iframe

    Unselect Frame

     

    ②定位中的能手:Xpath

    XPath 是一门在 XML 文档中查找信息的语言。XPath 用于在 XML 文档中通过元素和属性进行导航。

    XPath 是 XML 路径语言,用来查询 XML 文档里中的节点。主流的浏览器都支持 Xpath。Xpath 语言是基于 XML 文档的树结构,并提供了浏览树的能力,通过多样的标准来选择节点。

    http://www.w3school.com.cn/xpath/

    通过绝对路径定位元素

    xpath=/html/body/form/input

    通过相对路径定位元素

    xpath=//input

    使用索引来定位元素

    xpath=//input[2]

     

     

    使用属性值定位元素

    xpath=//input[@id=’username’]

    xpath=//input[@id=’username’][@name=’username’]

    xpath=//input[@id=’username’ and @name=’username’]

    xpath=//input[@id=’username’ or @name=’username’]

    使用属性名称定为元素

    xpath=//input[@name]

    使用部分属性值定位元素

    使用值来匹配任意属性及元素

    //input[@*=’username’]

     

    五、RFS基本使用(Selenium2Library)

    1.Selenium2Lib提供了与浏览器交互的关键词:

    Open Browser   打开浏览器 

    Maximize Browser Window   最大化浏览器窗口 

    Input Text        输入字符 

    Input Password    输入密码 

    Go To   前进 

    Go Back  返回 

    Reload Page    重新加载页面 

    Close Window   关闭窗口 

    Close Browser   关闭浏览器 

    Close All Browsers   关闭所有浏览器

    2.浏览器操作

    点击

    Click Button | locator

    Click Element | locator

    Click Image | locator

    Click Link | locator

    Double Click Element | locator 

    在IE中,如果遇到Click不起作用,可以用如下命令来替代:Press Key | <id> | \13\10

    输入

    Input Password | locator | text
    Input Text| locator | text
     

    Selenium2Lib提供了和其他界面元素交互的关键词:

    Element

    Focus 聚焦

    Simulate 模拟时间触发

    Open Context Menu 打开

    List

    Select All From List

    Select From List

    Unselect From List

    Checkbox

    Select Checkbox

    Unselect Checkbox

     

    Selenium2Lib提供了和其他界面元素交互的关键词: 

    Radio Button

    Select Radio Button

    Form

    Submit Form

    Choose File (For File Upload)

     

    默认情况下, Selenium2会自动等待页面加载完成

    对于页面AJAX可以使用如下等待页面的关键词:

    Wait For Condition | condition | timeout=None | error=None

    Wait Until Page Contains | text | timeout=None | error=None

    Wait Until Page Contains Element | locator | timeout

    获取页面信息:

    Page

    Get Title

    Get Location

    Get Source

    Get Matching Xpath Count 

    Element

    Get Element Attribute

    Get Value 

    Link

    Get All Links

    Table

    Get Table Cell 

    List

    Get List Items

    Get Selected List Label

    Get Selected List Labels

    Get Selected List Value

    Get Selected List Values  

    Alert Should Be Present

    Get Alert Message 

    Choose Cancel On Next Confirmation

    Choose Ok On Next Confirmation

    Confirm Action

     

     

  • 相关阅读:
    新博客-测试
    OpenJDK1.8.0 源码解析————HashMap的实现(一)
    Servlet和JSP读书笔记(三)之Cookie
    Servlet和JSP读书笔记(二)
    Servlet和JSP读书笔记(一)
    Java深入解析读书笔记(一)
    hibernate学习(二)
    hibernate学习(一)
    JAVA泛型之<? extends T>:(通配符上限)和<? super T>(通配符下限)
    Java泛型之<T>
  • 原文地址:https://www.cnblogs.com/yu2000/p/4346385.html
Copyright © 2011-2022 走看看