• Selenium Webdriver 介绍


    在前两篇文章中,主要介绍了Selenium IDE 工具及其使用和它的特点,也使用Selenium IDE和Firebug构建了一些脚本。本文,我们开始介绍不同类型的web元素及其定位策略

    我们已经非常熟悉Selenium IDE的使用了,接下来我们学习如何使用Selenium WebDriver创建更高级的自动化脚本。WebDriver是最引人注目的自动化测试工具之一。

     Selenium WebDriver 介绍
     WebDriver架构
     Selenium WebDriver的特性
     浏览器兼容性
     支持的语言
     速度
     驱动程序、方法和类
     结论

    一. Selenium WebDriver 介绍
    WebDriver是Selenium工具包中最强大和最流行的工具之一。WebDriver是Selenium RC的一个扩展版本,具有很多优点,解决了RC的许多问题。WebDriver将其支持扩展到许多最新的浏览器和平台。同时,WebDriver也不需要在执行测试脚本之前启动Selenium服务器

    Selenium RC和WebDriver API 组合在一起被称为Selenium 2.0,Selenium开发的目的就是为了支持动态的web 页面和Ajax 调用,它还支持各种驱动程序进行基于web的移动测试。

    二. WebDriver架构
    WebDriver与Selenium RC 有点细微区别,它是在每种浏览器生成的独立客户端基础之上运行的,不需要JavaScript额外的工作

    WebDriver直接调用Web浏览器,测试脚本也是这样执行。WebDriver使用浏览器的支持和功能来实现自动化。

    与Selenium RC不同,Selenium WebDriver本质上不需要在启动测试脚本执行之前启动Selenium服务器,如果用户希望在浏览器所在的同一台机器上执行测试,那么他/她可以利用这个优势,也可以不需要Selenium服务器。

    WebDriver 在下面三种情况时需要用到Selenium Server
    • 当用户希望在远程计算机上执行测试脚本时。
    • 当用户希望在HtmlUnit Driver上执行测试脚本时。
    • 当用户希望在多个平台上执行测试脚本时。

    WebDriver是一个纯粹的面向对象的框架,作用于OS层。它利用浏览器与自动化的本机兼容性,而无需使用其他硬件设备。随着需求的增加,它已经获得了广泛的用户群,并且已成为迄今为止最广泛使用的开源自动化测试工具之一。

    三. Selenium WebDriver的特性

    浏览器兼容性

    与Selenium RC和Selenium IDE不同的是,WebDriver支持各种Web浏览器及其版本,支持所有传统浏览器以及一些特殊的浏览器,如HlenUnit浏览器。

    HtmlUnit Browser除了在GUI模式下运行,用户无法查看测试脚本的执行情况外,测试执行的测试脚本与其他浏览器类似,它的执行速度像滚雪球一样快。

    WebDriver还支持基于Web的移动测试。它提供AndroidDriver和IphoneDriver来支持基于Web的移动测试
    注意:WebDriver不支持新浏览器。

    四. 支持的语言
    在前面的文章中,我们学会了使用记录和回放功能创建脚本,但是在创建此类测试脚本的过程中,会遇到各种问题。

    Selenium IDE强加限制:

    • 不支持迭代和条件语句
    • 不支持循环
    • 不支持错误处理
    • 不支持测试脚本依赖

    上面的问题可以通过编程解决,WebDriver方便用户选择不同的编程语言,并使用选定的语言进行脚本编写
    Selenium WebDriver支持的编程语言:

    1. Java
    2. C#
    3. PHP
    4. Pearl
    5. Ruby
    6. Python

    用户可以根据自己能力选择任何一种编程语言开始构建测试脚本。
    五. 速度
    与Selenium套件的其他工具相比,WebDriver是速度最快的工具。不通过任何外部设备通信,而是直接与浏览器通信。

    Selenium套件中的其他工具(如Selenium RC)不直接与Web浏览器通信。客户端(测试脚本以任何编程语言编写)与Selenium远程控制服务器通信,远程控制与Selenium Core(JavaScript程序)通信,后者又与Web浏览器通信。因此,这种复杂的通信阻碍了通信的速度。

    六. 驱动程序、方法和类
    WebDriver为自动化测试中的一些问题提供了广泛的解决方案。帮助我们在动态加载过程中处理复杂的Web类型元素,如复选框,下拉列表和提示信息等

    随着移动时代的到来,WebDriver API也已经成熟,并引入了一些关键技术。WebDriver使用户能够执行基于Web的移动测试,并提供了两个基本驱动程序
    • AndriodDriver
    • IphoneDriver

    WebDriver API相当简单易用,它不包括重复命令。相反,Selenium RC中有许多重复的命令

    七. 结论
    在本文中,通过概述体系结构,功能和限制,尝试让您熟悉Selenium WebDriver

    本文的重点:
    • Selenium套件由4个基本组件组成; Selenium IDE,Selenium RC,WebDriver,Selenium Grid。
    • WebDriver是基于Web的自动化测试。WebDriver与Selenium RC相比具有很多优势。
    • WebDriver支持多种Web浏览器,编程语言和测试环境。
    • WebDriver直接与Web浏览器通信,并利用本机兼容性进行自动化。
    • WebDriver的支持不仅突破传统用户操作的瓶颈。相反,它支持复杂用户操作的有效处理机制,如处理下拉列表,Ajax调用,窗口之间的切换,导航,处理警报等。
    • WebDriver使用户能够执行基于Web的移动测试。WebDriver引入了AndroidDriver和IphoneDriver。
    • WebDriver比Selenium Suite的其他工具更快,它可以直接调用浏览器而不要任何额外的干预

  • 相关阅读:
    HTTP协议中几个状态码
    Memcache 使用方法
    mysql 时间设置
    Adobe After Effect CS6 下载 安装 破解 汉化
    skycons.js 基于canvas的天气动态图标小插件
    Adobe Creative Cloud Cleaner Tool 清除工具
    nodejs常用命令行
    js过滤特殊字符
    QuickTime 介绍 下载 安装(win7及以上版本)
    js 16进制转10进制
  • 原文地址:https://www.cnblogs.com/luoditao/p/14315458.html
Copyright © 2020-2023  润新知