zoukankan      html  css  js  c++  java
  • selenium的定位方法-单元素定位

      selenium自动化测试中,提供了单个元素定位方法,多个元素定位方法,2种方式都是根据元素属性:ID、NAME、CLASS_NAME、TAG_NAME、CSS_SELECTOR、XPATH、LINK_TEXT、PARTIAL_LINK_TXEXT来进行定位,本文以实例作为说明

      以chrom打开百度首页为例子,右键选择-检查,打开开发者工具,点击选中搜索栏,可以定位到以下代码,以该搜索栏定位来分析单元素定位方法。 

       1.find_element_by_id:

       通过元素属性ID来定位到元素,方法是find_element_by_id,以上述输入框为例,它的ID属性是kw,代码如下:

         browser.find_element_by_id("kw").send_keys("selenium")

      2.find_element_by_name:
      通过元素属性NAME来定位到元素,方法是find_element_by_NAME,以上述输入框为例,它的NAME属性是wd,代码如下:
      browser.find_element_by_name("wd").send_keys("selenium")
      3.find_element_by_class_name:
      通过元素属性class_name来定位到元素,方法find_element_by_class_name,以上述输入框为例,它的class_name属性是s_ipt,代码如下:
      
    browser.find_element_by_class_name("s_ipt").send_keys("selenium")
    4.find_element_by_xpath:
      通过XPATH定位输入框,方法是find_element_by_xpath,获取的方式是定位到输入框的元素属性后,可以右键点击该属性,选中copy xpath选项,代码如下:
      browser.find_element_by_xpath('//*[@id="kw"]').send_keys("selenium")
     5.find_element_by_link_text:
      link_text用于对超链接的处理,在HTML代码中主要是以标签a对应,方法是find_element_by_link_text,以点击百度首页的“新闻”链接为例子,代码是<a href="http://news.baidu.com" name="tj_trnews" class="mnav">新闻</a>,那么可以使用以下方法定位:
      browser.find_element_by_link_text("新闻").click().
    6.find_element_by_partial_link_text:
      partial_link_text也用于超链接的处理,它和link_text类似,只不过是用于模糊匹配,例如匹配“新闻”,操作的时候只填写“闻”就可以定位到,方法:find_element_by_partial_link_text,代码:
      browser.find_element_by_partial_link_text("闻").click()
    7.find_element_by_css_selector:
      当使用ID、NAME属性无法定位到元素时,可以使用CSS_SELECTOR来定位,方法是find_element_by_css_Selector,还是以百度输入框为例,右键单击copy,选中copy selector,代码如下:
      browser.find_element_by_css_selector("#kw").send_keys("selenium")

     以上方法是总结单个元素定位的7种方法,个人比较喜欢使用XPATH进行定位,XPATH语法可以参考https://zhuanlan.zhihu.com/p/29436838
     
     
  • 相关阅读:
    flash中网页跳转总结
    as3自定义事件
    mouseChildren启示
    flash拖动条移出flash无法拖动
    需要一个策略文件,但在加载此媒体时未设置checkPolicyFile标志
    Teach Yourself SQL in 10 Minutes
    电子书本地转换软件 Calibre
    Teach Yourself SQL in 10 Minutes
    Teach Yourself SQL in 10 Minutes
    Teach Yourself SQL in 10 Minutes – Page 31 练习
  • 原文地址:https://www.cnblogs.com/qixc/p/11791726.html
Copyright © 2011-2022 走看看