zoukankan      html  css  js  c++  java
  • 基于Selenium2+Java的UI自动化(3)

    一、几种网页定位方式

    webdriver的页面定位很灵活,提供了8种定位方式;

    其中,常见的有三种:id 、cssSelector 、xpath;

    一个元素如果存在 id 属性,则这个 id 的值,在当前页面绝对是唯一的,测试代码根据id来查找元素,速度也是最快的,所以如果条件允许,当然用id最省事;

    而很多时候,元素对象并不存在id、或者存在动态的id,那么选择xpath、或者 cssSelector,可以很好的解决定位困难的难题;他们可以定位到网页上90%以上的元素。

    二、xpath定位法

    xpath是一种选择器,有自己的语法,可以参考w3school,了解一下,有xpath基础的,可以跳过;

    在Firefox浏览器中有firebug 和 firepath插件,可以帮助我们自动生成xpath 路径表达式,初学者不建议使用火狐浏览器来学习,路径表达式最好自己理解之后,自己写;

    (1)xpath常用符号说明

    绝对路径:一般从很目录开始 /html/... 这种写法,很长很繁琐,不推荐使用;
    相对路径:又称为 无限深度查询,表达式比较简洁;

    (2)简单模式

    (3)使用函数

    常用的函数有:contains( , )、text(" ") 、starts-with( , )

    (4)xpath的轴定位

    轴的概念:

    一个例子说明:

    用xpath轴时应该注意的几个问题:
    1. 调用轴,最好用 “ /”
    2. 轴后边要加上符号“::”
    3. "::" 后边可以接节点名称,也可以接" * "

    做自动化测试,避免不了定位页面的元素,定位方式多种多样,如果自己擅长一种定位方式并熟练使用,将对工作非常有帮助;

         更多详情请关注公众号“软件测试部落”


    史上第一个以“持续集成”方向为主的地址:www.hordehome.com
  • 相关阅读:
    DOM笔记(二):Node接口
    DOM笔记(一):HTMLDocument接口
    mysql_connect v/s mysql_pconnect
    HTML 5:绘制旋转的太极图
    HTML 5:你必须知道的data属性
    CSS:7个你可能不认识的单位
    CSS 3的display:盒类型详解
    PHP:6种GET和POST请求发送方法
    asp.net mvc生命周期学习
    关于sql row_number,rank,dense_rank,ntile函数
  • 原文地址:https://www.cnblogs.com/hordehome/p/6148103.html
Copyright © 2011-2022 走看看