精华内容
下载资源
问答
  • webdriver定位元素

    2019-01-10 11:51:00
    在UI层面的自动化测试开发中,元素定位与操作是基础。webdriver提供了很多种定位方法,以下总结了6种: 1、万能法:find_element_by_xpath("") driver.find_element_by_xpath("/html/body/div[1]/div/div[2]/...

    在UI层面的自动化测试开发中,元素的定位与操作是基础。webdriver提供了很多种定位方法,以下总结了6种:

    1、万能法:find_element_by_xpath("")

    driver.find_element_by_xpath("/html/body/div[1]/div/div[2]/div[1]/ul/li[1]/ul/li[4]").click() #点击右侧菜单栏

    2、id定位:find_element_by_id("id"),id属性是唯一的

    driver.find_element_by_id("loginName").clear()#用户名输入框的id属性
    driver.find_element_by_id("loginName").send_keys("admin")
    driver.find_element_by_id("pwdTip")..clear()#密码输入框的id属性
    driver.find_element_by_id("pwdTip").send_keys("111111")

    3、class定位,可使用类名,也可使用css选择器,类名不唯一

    #唯一的类
    driver.find_element_by_class_name("ivu-btn")#登录按钮,使用类名
    driver.find_element_by_css_selector(".ivu-btn")#登录按钮使用CSS选择器
    
    #不是唯一的类
    driver.find_elements_by_class_name("ivu-input-default")[0].clear()
    driver.find_elements_by_class_name("ivu-input-default")[0].send_keys("wzj")#用户名,使用类名(注意类名不能追加,只能有一个)
    driver.find_elements_by_css_selector(".ivu-input.ivu-input-default")[1].clear()
    driver.find_elements_by_css_selector(".ivu-input.ivu-input-default")[1].send_keys("pubmi111")#密码框,使用CSS选择器(注意追加类时不能有空格,用.追加)

    4、tag_name定位,使用元素的名称,find_element_by_tag_name("标签");tag_name可以不唯一,识别性比较低,一个页面会员大量的重复元素

    #唯一
    driver.find_element_by_tag_name("input").click()
    
    #不唯一
    driver.find_elements_by_tag_name("input")[0].click()#选择学段:初中
    driver.find_elements_by_tag_name("input")[1].click()#选择学科:语文

    5、标签属性name定位,find_element_by_name("标签");name为自定义标签属性值,识别性较高

    driver.find_elements_by_name("PeriodName")[1].click()#选择学段:初中
    driver.find_elements_by_name("SubjectName")[0].click()#选择学科:语文

    6、link定位:专门用来定位文本链接,find_element_by_link_name("text");

    driver.find_element_by_link_text(u"退出").click()#页面右上方的一些个人操作,比如退出、个人中心、消息通知等

     partial link定位:是对link定位的一种补充,当链接上的文本内容比较长的时候,可以取文本的一部分进行定位,当然这部分可以唯一地标识这个链接

     

    转载于:https://www.cnblogs.com/hpzyang/p/10249127.html

    展开全文
  • webdriver 定位元素

    2017-10-15 11:47:29
    定位元素方法 1. driver.find_element_by_id() 按照id查找元素 2. driver.find_element_by_partial_link_text() 模糊查询链接的文本 3. driver.find_element_by_link_text() 完全匹配链接的文本 4. driver.find_...

    定位元素方法

    1. driver.find_element_by_id() 按照id查找元素

    2. driver.find_element_by_partial_link_text() 模糊查询链接的文本

    3. driver.find_element_by_link_text() 完全匹配链接的文本

    4. driver.find_element_by_class_name() 按照元素的class属性值进行待查

    5. driver.find_elements_by_tag_name() 按照标签查询元素

    6. driver.find_element_by_xpath() 按照xpath路径来查询元素


    xpth定位

    b=webdriver.Firefox()
    b.get("http://www.maiziedu.com/")

    1. 绝对路径查询

    e=b.find_element_by_xpath("html")    #xpth查询根节点
    print(e.text)                        #获取根节点下所有的文本
    
    e=b.find_element_by_xpath("/html/body/div[3]/div[1]/div[1]/div/div[2]/ul/li[1]")    #按照绝对路径查询元素ul下第一个li元素
    print(e.get_attribute('class'))    #获取该元素下点calss属性
    

    2. 在整个文档中查询某元素

    e=b.find_element_by_xpath("//*")    #查询文档中的第1个元素
    print(e.tag_name)    #获取第一个元素的tag_name
    
    e=b.find_element_by_xpath("//li")    #查询文档中第1个元素
    print(e.get_attribute('class'))    #获取第1个元素的class属性
    e=b.find_element_by_xpath("//li[2]")    #查询文档中第2个li元素
    print(e.get_attribute('class'))    #获取第2个元素的class属性
    

    3.查询父元素

    e=b.find_element_by_xpath("//li[2]/.")    #查询文档中第2个li元素的当前节点
    print(e.tag_name)    #获取该元素点标签名
    e=b.find_element_by_xpath("//li[2]/..")    #查询文档中的第2个li元素的父元素
    print(e.tag_name)    #获取该元素点标签名
    
    
    4. 查询包含或不包含某属性的元素

    e=b.find_element_by_xpath("//div[@id]")    #查询文档中的第一个有id属性的div元素
    print(e.get_attribute('id'))
    e=b.find_element_by_xpath("//div[not(@id)]")    #查询文档中的第一个没有id属性的div元素
    print(e.get_attribute('class'))
    
    
    5. 查询包含或不包含某属性值=特定值的元素

    e=b.find_element_by_xpath('//div[not(@class="head-container"])')    #查询文档中的第一个没有id属性的div元素
    print(e.get_attribute('class'))
    
    
    6. count函数查询存在某元素*个的父元素

    e=b.find_element_by_xpath('//ul[count(li)=1]/../h5')    #有1个li元素的ul->获取该ul的父节点->获取该父节点的h5元素
    print(e.text)          #获取h5元素的文本内容
    
    教程:http://www.w3school.com.cn/xpath/xpath_nodes.asp
    














    展开全文
  • WebDriver定位元素

    2017-03-03 11:45:00
    selectWindow("null"),返回到windows的主窗体。 verifyTextPrese 验证特定文本,不关心具体的位置 ...一、定位页面元素 Identifier定位 id name Id定位:id Name定位:name 上三种,不依赖UI元素在页面...

    selectWindow("null"),返回到windows的主窗体。

    verifyTextPrese 验证特定文本,不关心具体的位置

    verifyElementPresent 验证ui元素是否存在

    verifyText 验证文本和UI元素

     

    一、定位页面元素

    Identifier定位 id name

    Id定位:id

    Name定位:name

     

    上三种,不依赖UI元素在页面的位置,页面结构后也可以通过

     

    XPath

    DOM document.

    CSS

     

     二、文字匹配模板 

    需要范本的命令有 verifyTextPresent verifyTitle VerifyAlert assertConfirmation verifyText verifyPrompt

    模板(pattern)允许使用特殊符号描述期望值

     

    三种模板:

    1. Globbing范本
    2. 正则表达式s范本
    3. Exact范本(不用,用来找*)

     

    Globbing

    glob:

    只支持*和字符集[],selenium不支持?

     

    [aeiou]匹配任何小写元音

    [0~9] 匹配任何数字

    [A-Za-z0-9]匹配任何数字和字

    星号*  任何

     

    正则表达式s范本

    加前缀 regexp:(对大小写敏感)或regexpi:(对大小写不敏感)

    regexp:[0-9]+  匹配任何长度的十进制数

    .*   就是全部

    找*  使用\*

     

    转载于:https://www.cnblogs.com/vanoracxn/p/6495760.html

    展开全文
  • webdriver定位元素方法

    2016-06-01 11:20:00
    webdriver定位元素方法: id find_element_by_id() name find_element_by_name() class name find_element_by_cla...

    webdriver定位元素方法:

    • id                                       find_element_by_id()
    • name                                  find_element_by_name()
    • class name                          find_element_by_class_name()
    • tag name                            find_element_by_tag_name()
    • link text                              find_element_by_link_text()               find_element_by_link_text("新闻")
    • partial link text                    find_element_by__partial_link_text()
    • xpath                                  find_element_by_xpath()
    • css selector                           find_element_by_css_selector()

    #coding=utf-8
    from selenium import webdriver
    import time
    driver= webdriver.Firefox()
    driver.get("http://www.cqlw.com/site/login.action?sourceUrl=")
    driver.find_element_by_xpath("/html/body/div/form/table/tbody/tr/td[2]/div[4]/input").clear
    driver.find_element_by_xpath("/html/body/div/form/table/tbody/tr/td[2]/div[4]/input").send_keys("ldd007")
    driver.find_element_by_xpath("/html/body/div/form/table/tbody/tr/td[2]/div[7]/input").clear
    driver.find_element_by_xpath("/html/body/div/form/table/tbody/tr/td[2]/div[7]/input").send_keys("222222")
    driver.find_element_by_id("sub").click()
    driver.quit()

     

    转载于:https://www.cnblogs.com/ldd215/p/5548978.html

    展开全文
  • Selenium.Webdriver的工作原理说起来很...这篇文章主要是总结一下WebDriver定位元素的几种方式。 id定位 ''' find_element_by_id("id") 因为ID属性唯一,所以这种定位结果是唯一确定的 ...
  • selenium WebDriver定位元素学习总结 2016年12月08日 23:15:08 阅读数:19187 定位元素先要掌握基本的HTML语法: http://blog.csdn.net/jojoy_tester/article/details/53222425 ......
  • 元素定位:id与name属性的定位 打开百度,搜索Selenium自学,然后点击搜索按钮,在搜索页面结果按F12,检查按钮点击搜索框 发现其属性id,属性值为”kw”,属性name,属性值为”wd” 接下来在用检查去寻找百度一下...
  • 1.driver.current_url:用于获得当前页面的URL 2.driver.title:用于获取当前页面的标题 ...4.driver.current_...6.driver.find_element_by***** 定位元素,有18种 7.driver.get(url):浏览器加载url。 8.driver.for
  • 本文主要是讲解在web页面中如何定位元素,这是进行自动化操作的前提。 前言 我们主要是要做web自动化,通常一个web页面上有输入框、按钮、文字链接、图片等元素,自动化测试要做的就是模拟鼠标和键盘来操作这些元素...
  • 通过几天的学习,了解了webdriver定位元素的方法和基本的函数 一.定位元素 (1)id定位  driver.find_element_by_id("id") (2)name定位  driver.find_element_by_name("name") (3)class定位  ...
  • 三、WebDriver定位元素 推荐使用的webdriver是firefox,因为他的firebug更能可以帮助定位页面元素使用 # create a new Firefox session cls.driver = webdriver.Firefox() 1、通过id定位 可以通过find_element...
  • 在UI层面的自动化测试开发中,元素定位与操作是基础,也是经常遇到的困难所在。webdriver提供了8种定位: 1. id定位:find_element_by_id("id值");id属性是唯一的 1 driver.find_element_by_id("loginName")....
  • WebDriver元素定位方式 对应的python方法 id find_element_by_id() name find_element_by_name() class name find_element_by_class_name() tag name find_element_by_tag_name() link text find_...
  • webdriver定位元素技巧

    2016-09-07 11:03:12
    当使用webdriver编写此脚本的时候,核心就是对元素定位,通常的定位方式有By.id .name .select等等. 在编写页面源代码时,通常会事如下的一种编写格式,ID为固定值时我们可以直接使用By对象的id方法By.id("xxx");...
  • WebDriver定位元素方法

    2016-11-19 21:50:00
    如果把页面上的元素看作人的话,在现实世界如何找到某人呢?方法有三: 一、通过人本身的属性,例如他的姓名,手机号,身份证号,性别,...Xpath和CSS就提供了这种以标签名为层级关系的定位方式。 三、可以借助相...
  • 一、selenium定位元素的几种方法selenium2.0=selenium1.0+webdriverselenium定位元素的几种方法:WebDriver,selenium ID...
  • 定位元素失败时,可以从以下方面考虑 1.动态id定位不到元素 解决办法:使用xpath的相对路径方法查找到该元素。 2.iframe原因定位不到元素 原因:一个网页嵌套了多个iframe/frame,直接定位是不行的。 解决办法:要...
  • 1.定位元素 代码块(百度首页): <span class="bg s_ipt_wr quickdelete-wrap"> <span class="soutu-btn"></span> <input id="kw" name="wd" class="s_ipt" value="" maxlength="255" ...
  • webdriver属于Selenium体系中设计出来操作浏览器的一套API,支持多种语言,本文中主要讲解为对元素定位,不涉及具体语言,在某些不同语言中有差异性的地方,本文使用python语言作为示例(比如xpath中的部分语句)...
  • 在使用webdriver对页面元素进行操作的时候,发现driver.findElement(By.className("count"))不管用了,会报org.openqa.selenium.WebDriverException: unknown error: Element is not clickable at point (-140, 411)...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,622
精华内容 1,048
关键字:

webdriver定位元素