精华内容
下载资源
问答
  • 一、xpath基本定位用法 1.使用id定位 – driver.find_element_by_xpath(’//input[@id=“kw”]’) 2.使用class定位 – driver.find_element_by_xpath(’//input[@class=“s_ipt”]’) 二、xpath相对路径/绝对路径...

    一、xpath基本定位用法

    1.使用id定位 – driver.find_element_by_xpath(’//input[@id=“kw”]’)

    在这里插入图片描述
    2.使用class定位 – driver.find_element_by_xpath(’//input[@class=“s_ipt”]’)

    在这里插入图片描述
    二、xpath相对路径/绝对路径定位

    1.相对定位 – 以// 开头 如://form//input[@name=“phone”]
    注意:

    #定位 找到元素 – 做到唯一识别
    #优先使用id
    #舍弃:有下标的出现、有绝对定位的出现、id动态变化时舍弃在这里插入图片描述
    2. 绝对定位 – 以/ 开头,但是要从根目录开始,比较繁琐,一般不建议使用 如:/html/body/div/a
    在这里插入图片描述
    三、xpath文本、模糊、逻辑定位

    1.【文本定位】使用text()元素的text内容 如://button[text()=“登录”]
    在这里插入图片描述
    3. 【模糊定位】使用contains() 包含函数 如://button[contains(text(),“登录”)]、//button[contains(@class,“btn”)] 除了contains不是=等于
    在这里插入图片描述
    3. 【模糊定位】使用starts-with – 匹配以xx开头的属性值;ends-with – 匹配以xx结尾的属性值 如://button[starts-with(@class,“btn”)]、//input[ends-with(@class,"-special")]

    1. 使用逻辑运算符 – and、or;如://input[@name=“phone” and @datatype=“m”]

    四、xpath轴定位
    1 轴运算

    ancestor:祖先节点 包括父
      parent:父节点
      prceding-sibling:当前元素节点标签之前的所有兄弟节点
      prceding:当前元素节点标签之前的所有节点

    following-sibling:当前元素节点标签之后的所有兄弟节点

    following:当前元素节点标签之后的所有节点

    使用语法: 轴名称 :: 节点名称

    使用较多场景:页面显示为一个表格样式的数据列
      在这里插入图片描述
    注意:

    #定位 找到元素 – 做到唯一识别
    #优先使用id
    #舍弃:有下标的出现、有绝对定位的出现、id动态变化时舍弃

    展开全文
  • 一、xpath基本定位用法1.使用id定位 -- driver.find_element_by_xpath('//input[@id="kw"]')2.使用class定位 -- driver.find_element_by_xpath('//input[@class="s_ipt"]')二、xpath相对路径/绝对路径定位1.相对定位...

    一、xpath基本定位用法

    1.使用id定位 -- driver.find_element_by_xpath('//input[@id="kw"]')

    addbcb8735e472a8d0bf25b83ed2176d.png

    2.使用class定位 -- driver.find_element_by_xpath('//input[@class="s_ipt"]')

    29a4fbfec612a846e350b8608c9d5e24.png

    二、xpath相对路径/绝对路径定位

    1.相对定位 -- 以// 开头 如://form//input[@name="phone"]

    fe0bbadce2e3049cd29cbdfee45d3920.png

    2. 绝对定位 -- 以/ 开头,但是要从根目录开始,比较繁琐,一般不建议使用 如:/html/body/div/a

    85e275a7019b0aaf7092e967075a4198.png

    三、xpath文本、模糊、逻辑定位

    1.【文本定位】使用text()元素的text内容 如://button[text()="登录"]

    ff32982bad8041098b736bc0ee056a8d.png

    2. 【模糊定位】使用contains() 包含函数 如://button[contains(text(),"登录")]、//button[contains(@class,"btn")] 除了contains不是=等于

    0050cf5e29d84f1f224023ae7c34e868.png

    3. 【模糊定位】使用starts-with -- 匹配以xx开头的属性值;ends-with -- 匹配以xx结尾的属性值 如://button[starts-with(@class,"btn")]、//input[ends-with(@class,"-special")]

    4. 使用逻辑运算符 -- and、or;如://input[@name="phone" and @datatype="m"]

    四、xpath轴定位

    1 轴运算

     ancestor:祖先节点 包括父
      parent:父节点
      prceding-sibling:当前元素节点标签之前的所有兄弟节点
      prceding:当前元素节点标签之前的所有节点

      following-sibling:当前元素节点标签之后的所有兄弟节点

      following:当前元素节点标签之后的所有节点

    使用语法: 轴名称 :: 节点名称

      使用较多场景:页面显示为一个表格样式的数据列

    ff8381a13ee3582330d890d5d8df6bba.png

    注意:

    #定位 找到元素 -- 做到唯一识别
    #优先使用id
    #舍弃:有下标的出现、有绝对定位的出现、id动态变化时舍弃
    展开全文
  • WEB自动化测试Xpath定位方法

    千次阅读 2018-03-16 16:21:44
    前言: Xpath是在XML文档中查找信息的一种语言,使用路径表达式来选取XML文档中的节点或节点集,由于XML与HTML...1.查看元素是否找到,如果有返回一个列表:$x('xpath路径")][text()="项目总数"]') 2.实现点击:...

    前言:

    Xpath是在XML文档中查找信息的一种语言,使用路径表达式来选取XML文档中的节点或节点集,由于XML与HTML结构类似(前者用于传输数据,后者用于显示数据),所以Xpath也常用于查找HTML文档中的节点或节点集。

    ####浏览器控制台下下用xpath调试

    1.查看元素是否找到,如果有返回一个列表:$x('xpath路径")][text()="项目总数"]')

    2.实现点击:$x('xpath路径")][text()="项目总数"]')[0].click()

    说明

    一  路径表达式:

    1. 路径以“/”开始     表示找到满足该绝对路径的元素;
    2. 路径以//”开始     表示找到文档中所有满足“//”后规则的元素  如//BBB  表示找到所有BBB元素;
    3. *                           表示所有  如//*  表示选择所有元素;
    4. [表达式]              进一步限定元素:①[数字]   表示选择第几个, 其中[last()]表示最后一个;②[@属性]  限定满足该属性  ,如//BBB[@name]   表示含有name属性的BBB元素,//BBB[not(@*)]表示所有没有属性的BBB元素;拓展,属性赋值,如 /BBB[@name="yyy"]   表示所有含有name属性且其值为“yyy”的BBB元素;
    5.   |       逻辑或    将多个路径合并到一起    如//BBB | /AAA  选择所有BBB元素和根元素AAA      [可合并的路径数目没有限制]  

    二 辅助工具

     

     Firefox浏览器用FireBug插件查看元素,还可以单击鼠标右键,选择copy Xpath。

     

    Chrome浏览器就F12键就OK

    IE浏览器可以一个小程序

    xpath是可以解决网页自动化定位99%的问题。

    如果一个元素没有id 没有name那我们该怎么定位该元素了,第一想到的就是用xpath了。
    在网上copy了一段代码,就以这个做说明吧,xpath定位元素分相对路径和绝对路径,主要说明下相对路径的用法。

    示例代码如下:

    <html>
      <body link="#0000cc">
        <div id="wrapper" style="display: block;">
          <div id="content" style="display: block;">
          <div id="u1" style="display: block;">
             <div id="m">
                 <p id="lg">
                 <p id="nv">
                 <div id="fm">
                     <form id="form" class="fm" action="/s" name="f1">
                         <span class="s_ipt_wr">
                             <input id="kw"  type="text" name="wd">
            ......
        </body>
     </html>

    1、绝对路径定位(初级)

    使用绝对路径的方式定位除非是其父级元素都没有一个唯一识别的元素才使用该方式;
    假如要定位到输入框,那么使用绝对路径的方式为:
    xpath= /html/body/div[1]/div[2]/div[1]/div[1]/form/span[1]/input
    就是从根部开始找,一级一级往下走,如果有同级别的需要用[]标明序号,从1开始

    2、相对路径定位(初级)

    下面各方法中都是以定位到input做说明,以下不再说明。

    2.1 元素本身找(@表示属性)
    xpath=//input[@id=”kw” ] 或者xpath=//*[@id=”kw” ]
    //input表示匹配input标签的所有元素
    //*表示匹配所有元素的标签
    当然不限于用id,也可以xpath=//*[@type=”text”]
    注意:要保证这些元素可以唯一的识别一个元素

    2.2 布尔值写法
    如果input标签中 id不是唯一的,type也不是唯一的,但在该页面中包含该id和type的只有这个元素时,那么我们可以用组合的方式定位
    xpath=//*[@id=”kw” and @type=”text”]
    当然还有or 或,慎用
    xpath=//*[@id=”kw” or @type=”text”]

    2.3 找父级
    如果自己没有唯一的标志,那么就找自己的上级(父级),或者上级的上级,以此类推。
    找父级:xpath=//span[@class=’s_ipt_w’]/input
    找父级的父级:xpath=//form[@id=”form”]/span[1]/input

    2.4 跳级
    如果需要定位的元素在该页面不是唯一,但在某个容器内是唯一的,当然那个容器必须要有唯一的标志;
    跳级的话要用两个//
    那么可以这样表示:xpath=//div[@id=”wrapper”]//input [@id=”kw”]

    注意:该方法要保证在某容器内该元素是唯一的。

    3.过滤(中阶方法)----Xpath函数

    3.1.contains (): //div[contains(@id,'in')] ,表示选择id中包含有’in’的div节点

    3.2.text():由于一个节点的文本值不属于属性,比如“<a class=”baidu“ href=”http://www.baidu.com“>baidu</a>”,所以,用text()函数来匹配节点://a[text()='baidu']

    3.3.last():前面已介绍

    3.4.starts-with(): //div[starts-with(@id,'in')] ,表示选择以’in’开头的id属性的div节点

    3.5.not()函数,表示否定,//input[@name=‘identity’ and not(contains(@class,‘a’))] ,表示匹配出name为identity并且class的值中不包含a的input节点。 not()函数通常与返回值为true or false的函数组合起来用,比如contains(),starts-with()等,但有一种特别情况请注意一下:我们要匹配出input节点含有id属性的,写法如下://input[@id],如果我们要匹配出input节点不含用id属性的,则为://input[not(@id)]

    4.轴(高阶方法)

    这里写图片描述

     

    following-sibling    选取当前节点之后同级节点。

    用我实际工作中的介绍下,如图:

    这里写图片描述
    要定位要编辑按钮(图片底部处)
    假如要定位列表中的某些数据某个按钮,但不能确定他的位置在第一个还是第二个还是其他,那么可以用轴的方式定位;
    xpath=//*[@id=”main-container”]//div[@class=”tabbable”]//li/h3[starts-with(text(),”【图片素材】”)]/ancestor::li[1]/div[3]/a[@title=”编辑”]
    ancestor的前半部分,表示先定位到要找名称以“【图片素材】”开头的数据;后半部分定位到名称处后,再根据ancestor的功能(ancestor表示选取当前节点的所有先辈,那么要从名称处的父级开始定位)定位要需要定位的元素“编辑”按钮。
    注意:该方法很实用,能定位到比较复杂的元素,还要加两个::

    5.步(高阶方法)

    语法:轴名称::节点测试[谓语]

    这里介绍下last();上面的轴方法中,还存在一个问题就是,一条数据中图片数量不同的话,上面的方法又不能使用了,需用到步方法
    xpath=//*[@id=”main-container”]//div[@class=”tabbable”]//li/h3[starts-with(text(),”【图片素材】”)]/ancestor::li[1]/div[last()]/a[@title=”编辑”]
    因为编辑按钮在最后一个div中,所以前面不管有多少图片的话他总是会定位到最后一个,如果要定位要其他的则在()输入数字即可。

     

    差不多了,用以上这些方式进行定位基本能应付常规工作中的定位了

    展开全文
  • 自动化测试的概念: 软件自动化测试就是通过测试工具或者其他手段, 按照测试人员的预定计划对软件产品进行自动化 测试,他是软件测试的一个重要组成部分,能够 完成许多手工测试无法完成或者难以实现的测试 ...

    什么是自动化

    自动化测试的概念:
    	软件自动化测试就是通过测试工具或者其他手段,
    	按照测试人员的预定计划对软件产品进行自动化
    	测试,他是软件测试的一个重要组成部分,能够
    	完成许多手工测试无法完成或者难以实现的测试
    	工作,正确合理的实施自动化测试,能够快速,
    	全面的对软件进行测试,从而提高软件质量,节
    	省经费,缩短软件的发布周期。
    

    自动化测试的历史

    1.自动化测试就是任何利用工具来辅助的测试,几乎在计算机工业产生的第一天
    这种测试就出现了。
    
    2.历史上从来没有出现过“测试自动化取代测试工程师工作”这种事情发生
    除非你完全忽略测试人员们的真正工作。
    
    3.测试自动化意味着使用测试工具。自动化测试是个古老的理念。
    

    为什么进行自动化测试

    1.自动化测试的好处:
    (1)缩短测试周期
    计算机行业更新迭代快速,大量频繁的回归测试消耗时间,
    自动化测试能够将重复的实行交给计算机去做,加快测试速度。
    (2)避免人为出错
    测试人员不可能持续高度集中,并且人类易受外界影响(头疼脑热,精神不振)
    可能会造成人为错误	
    (3)测试信息存储
    自动化测试将测试信息和数据储存在文件中,思路清晰明确,交接方便
    (4)轻易获取覆盖率
    自动化测试能够解放测试人员,使测试人员能够有更多的精力
    做那些非重复性的工作。
    (5)其他
    自动化测试可以是实现自动或者定时执行
    

    web自动化条件和使用范围

    1.使用自动化的前提条件
     	(1)手动测试已经完成,后期再不影响进度的前提下逐渐实现自动化
     	(2)项目周期长,重复性的工作都交给机器去实现
     	(3)需求稳定,项目变动不大
    	(4)自动化测试脚本复杂度比较低
    	(5)可重复利用
    
    2.使用自动化测试的场景
     	(1)频繁的回归测试
    	(2)冒烟测试
    	(3)传统行业需求变化不大,应用频繁
     	(4)性能测试
    

    1.什么是xpath

    XPath 是一门在 XML 文档中查找信息的语言
    
    XPath即为XML路径语言(XML Path Language),它是一种用来确定XML文档中某部分位置的语言。
    
    XPath基于XML的树状结构,提供在数据结构树中找寻节点的能力。起初XPath的提出的初衷是将其作为一个通用的、介于XPointer与XSL间的语法模型。但是XPath很快的被开发者采用来当作小型查询语言。
    

    2.什么是XML

    XML 指可扩展标记语言(EXtensible Markup Language)
    XML 是一种标记语言,很类似 HTML
    XML 的设计宗旨是传输数据,而非显示数据
    

    3.XML和HTML区别
    在这里插入图片描述
    4.节点的概念:每个XML/HTML的标签我们都称之为节点
    在这里插入图片描述
    在这里插入图片描述
    5.XPath 使用路径表达式来选取 XML 文档中的节点或者节点集

    这些路径表达式和我们在常规的电脑文件系统中看到的表达式非常相似。
    

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    查找某个特定的节点或者包含某个指定的值的节点
    在这里插入图片描述
    选择未知节点
    在这里插入图片描述

    选取若干路径
    在这里插入图片描述

    补充:

    //*[text()=“x’x’x”]   全部//title/text()  内容是xxx的元素
    
    //*[starts-with(@attribute,”xxx”)]		属性以xxx开头的元素
    
    //*[contains(@attribute,”xxxxx”)]		属性中含有xxx的元素
    
    //*[@attribute1=value1 and @attribute2=value2]	同时有两个属性值的元素
    

    2.css选择器元素定位
    1.什么是css选择器?

    CSS 中,选择器是一种模式,用于选择需要添加样式的元素。
    计算机能够通过css选择器定位到相应元素,我们在编写自动化测试
    脚本的时候很多时候是在不断地找到css选择器。
    

    3.css选择器语法

    (1)通过伪类名、id、标签名定位

    测试站点: http://www.baidu.com
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    (2) 元素之间的嵌套关系
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    (3) 通过属性
    在这里插入图片描述
    在这里插入图片描述
    (4) 通过父子关系
    在这里插入图片描述

    展开全文
  • title: Xpath 定位汇总 ...本文主要介绍 Xpath 定位的语句语法,应用场景为Web、APP UI自动化的元素定位中。 文章参考-https://blog.csdn.net/zyooooxie/article/details/83856854 什么是Xpath XPat...
  • 自动化测试 xpath的扩展定位使用 #text xpath driver.find_element_by_xpath(’//[@text=“搜索”]’).click() #id xpath driver.find_element_by_xpath(’//[@resource-id]=“me.onehome.app:id/doSearch”’)....
  • 测试工作中通过定位查找元素是较为常用的,但有些时候无法查到测试对象较为完善的属性及属性值,Selenium提供了一个更为全面的方法,通过元素在被测...绝对路径是Xpath识别对象最为简单的一种方法,即设置测试对象...
  • xpath实用技巧总结 多个相同的标签如何定位,包含空格如何定位。
  • 学习教程地址:...XPath 术语先来了解下xpath的相关术语吧:例子:&lt;?xml version="1.0" encoding="ISO-8859-1"?&gt; &lt;bookstore&gt;...
  • 测试关于大数据测试的用例,可以作为参考资料,内容详细
  • 安装插件 cypress-xpath npm安装 npm install -D cypress-xpath yarn安装 yarn add cypress-xpath --dev 将cypress-xpath导入项目 cypress/support/index.js import 'cypress-xpath' //or require('cypress-xpath'...
  • xpath定位元素几乎是万能的了,可以定位到99%的元素;如果一个元素没有id 没有name那我们该怎么定位该元素了,第一想到的就是用xpath了。 在网上copy了一段代码,就以这个做说明吧,xpath定位元素分相对路径和...
  • 如果大家有机会做web自动化测试的工作,在框架搭建好之后,大部分的工作都是在写定位表达式,然而,8大元素定位方法中...web自动化测试中,常用的三种xpath语法: 第一种://标签名[@属性名=属性值] 如: //input[@a.
  • 自动化测试xpath

    2019-06-18 11:56:51
    通过工具,按照测试人员预定计划软件产品进行自动化测试,重复性工作。 二、自动化测试分类 功能测试 性能测试:使用loadrunner、jmeter等工具,压力与负载、强度测试等 接口测试 三、自动化常用工具 QTP(收费)是...
  • web自动化测试中可以通过id、name、className、xpath,CSSSelector、linkText等方式来定位页面元素,其中最常用的是通过id来定位页面元素,如果需要定位的元素没有id那么可以选择其他的定位方式来定位,今天就来总结...
  • 如下图所示,用定位工具定位输入框,无id,有class值,但不唯一,与标题栏的class值重复,这里要用xpath定位: 首先,找到定位框的上一节点id: 定位框的xpath="//*[@resource-id=‘id值’]/定位框class值 ...
  • 上一篇博客selenium+python自动化测试(二)–使用webdriver操作浏览器讲解了使用webdriver操作浏览器的各种方法,可以实现对浏览器进行操作了,接下来就是对浏览器页面中的元素进行操作,操作页面元素,首先要找到...
  • 我:手动就可以操作简单的测试,为什么要自动化测试 老师:主要是回归测试。改了bug之后,重新再来测试。这样用回归测试就比手动测试要节约成本 Appium+Python移动端实战一、前提二、上实战 一、前提 开启模拟器...
  • XPath 是一门在 XML 文档中查找信息的语言。XPath 可用来在 XML 文档中对元素和属性进行遍历。XPath虽然是被设计用来搜寻XML文档的,不过它也能很好的在HTML文档中工作,并且大部分浏览器也支持通过XPath来查询节点...
  • App自动化测试 Xpath定位元素
  • 自动化测试selenium中xpath的用法

    千次阅读 2017-06-07 15:08:00
    XPath 使用路径表达式来选取 XML 文档中的节点或节点集。节点是通过沿着路径 (path) 或者步 (steps) 来选取的。 XML 实例文档 我们将在下面的例子中使用这个 XML 文档。 Harry Potter 29.99 Learning...
  • 我们做自动化测试可能遇到的问题:1.大量使用name、id、xpath等页面元素。无论是功能修改、UI重构还是交互性改进都会影响到这些元素,这使得Selenium测试变得非常脆弱。  我们做自动化测试可能遇到的问题:  1....
  • 在ui自动化中,与接口自动化中区别最大的是,ui自动化追求的是脚本的稳定性,那么如何保证脚本的稳定性呢?归根到底,就是元素定位的表达式,元素定位表达式稳定了,才能更好的保证ui自动化脚本的稳定性。本片文章...
  • 个人觉得这个工具比任何自动化测试框架都好使,使用关键字和数据双驱动,不需要写一行代码,无需维护脚本,只需要维护用例数据。Web元素只需要在Chrome中复制xPath即可,定位非常高效。 工具安全无木马,目的只为...
  • 首先我们先打开谷歌的F12开发者模式,然后我们在开发者模式使用ctr+F,就会出现xpath,我们以百度举例 假如我输入 //link[@rel=‘dns-prefetch’],那它下面有个1of8.。表示的是有这个属性有8个相同的地方 xpath...
  • 为什么要学习Xpath、CSS定位? 1.在实际项目中标签没有id、name、class属性 2.id、name、class属性值为动态获取,随着刷新或加载而变化 什么是Xpath? 1.XPath即为XML Path 的简称,它是一种用来确定XML文档中某部分...
  • 1. 什么是XPathXPath使用路径表达式在XML文档中进行导航 XPath包含一个标准函数库 XPath是SXLT中的主要元素,是一个W3C标准 2. XPath语法 3. 代码演示 # -*- coding: utf-8 -*- # 这里使用百度...
  • xpath是一种在XML文档中定位元素的语言。xpath语法比较简单,用法多,很强大的定位方法,我比较喜欢xpath。 绝对路径定位: 假如一个人,你不知道他的任何特征,直白来说,就是你不知道他的身份证号码、名字、手机...
  • 2、输入关键字“Python3.6+selenium2.53.6自动化测试”点击查询 二、实现代码 #coding:utf-8 from selenium import webdriver import time ''' 1、通过xpath定位百度输入框 2、输入关键字“Python3.6+selenium...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 26,097
精华内容 10,438
关键字:

自动化测试xpath

友情链接: Mobileye.zip