zoukankan      html  css  js  c++  java
  • 脚本元素定位实例学习

    一、Element Locator(元素定位器)

    主要作用:定位需要操作或者验证的页面元素,告诉Selenium命令的操作对象,为Target参数提供数据依据,确定命令执行的位置。

    二、定位元素的方法

    1. id=id:根据指定的“@id”属性选择元素

    可以通过Xpath,firebug 查看id属性

    2. name=name:根据指定的"name"属性选择元素

    3. identifier=identifier

    特殊命令,定位根据其需要而改变,它首先会根据id=identifier寻找页面元素,如果未找到,则会根据name=identifier寻找页面元素

    4.Link=textPattern:用link来选择HTML中匹配包含文字的链接

    5. dom=javasccriptExpression:dom locator 使用dom方式定位元素

    例如:进入http://www.glassshop.com网站,想定位文本框 enter your keywords,可以使用如下定位方法:dom=document.getElementByld("keywords")。(此方法不常用)

     6.Xpath=XpathExpression:Xpath locator 使用Xpath表达式来定位元素,有4种语法如下:

    第1种语法:html/body/div[2]/div[4]/div[1]/div[1]/form/div/input[1]

    此语法的优点:语法简单。缺点:如有很多满足条件的标签,命令会分不清楚操作对象。

    第2种语法:查找所有form,然后再选择第1个form的第1个div,然后选择第1个input元素。

    完整Xpath表达式为://form[1]/div/input[1]

    此语法的优点:语法简单。缺点:如有很多满足条件的标签,命令会分不清楚操作对象。

    第3种语法://input[@class="input"],@的意思是选择元素中的属性,该方法的意思是选择所有input元素中class属性为input的元素

    若写成//input[@class]表示选择有属性名为class的input标签,//input[@]:表示选择有属性的input标签。

    此种语法的优点:语法简单。 缺点:有时不只1个class属性为input的input标签。

    第4种语法://input[@class="input" and @type="text"],表示为:选择input元素中type属性为text,并且class属性为input的元素

    语法补充说明:

    • 选择未知元素,使用“*”选择满足条件的所有元素,如:“/*”表示选择满足条件的所有元素。
    • 选择分支使用"[]"符号,括号里面为分支的序号,如:/div[2]表示选择第2个div,而/div[last()]表示选择最后一个div
    • 特别提示,没有/div[first()]的语法,要选择第1个分支,使用/div[1]
    • 选择1个以上的元素时,使用|,如://div|//a,表示选择所有div和a元素。
    • 使用Xpath定位时不一定非得使用"//"开头,使用"//"开头只是为了简便语法、省略Locator前序
    • 在没有Locator前序的时候,默认为identifier定位方式,如果以document开头,那么默认为使用dom定位方法。若以"//"开头则默认为Xpath定位方法。

     

     

  • 相关阅读:
    假期周总结报告(五)
    java 原码反码及补码 总结
    java ==与equals()方法的总结
    java String 类型总结
    java 全局变量 的小结
    java static语句的总结
    ATM开学测试(未完成)
    第七周学习进度总结
    第六周学习进度总结
    第五周学习进度总结
  • 原文地址:https://www.cnblogs.com/hulifang/p/7210284.html
Copyright © 2011-2022 走看看