精华内容
下载资源
问答
  • assertion(断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制。在实现中,assertion就是在程序中的一条语句,它对一个boolean表达式进行检查,一个正确程序必须保证这个boolean表达式的值为...
  • webdriver提供了一系列的元素定位方法常用的有以下几种:idnameclass namelink textpartial link texttag namexpathcss selectorXPath绝对与相对定位XPath即为XML路径语言,它是一种用来确定XML文档中某部分位置的...

    元素定位

    元素的定位是自动化测试的核心,想要操作一个元素,首先应该识别这个元素。webdriver提供了一系列的元素定位方法,常用的有以下几种:

    • id
    • name
    • class name
    • link text
    • partial link text
    • tag name
    • xpath
    • css selector

    XPath绝对与相对定位

    XPath即为XML路径语言,它是一种用来确定XML文档中某部分位置的语言。XPath基于XML的树状结构,提供在数据结构中找寻节点的能力。

    案例:登录百度首页,输入“selenium”,点击“百度一下”


    XPath定位--层级与逻辑组合定位

    案例:自学网输入用户名和密码




    展开全文
  • 下面按类别列出一些ORACLE用户常用数据字典查询使用方法。 1、用户 查看当前用户缺省表空间 SQL>select username,default_tablespace from user_users; 查看当前用户角色 SQL>select * from user_...
  • 本文接着讲解Java+Selenium的知识元素定位的重要性SELENIUM2中有几种元素定位方法2.1 几种定位方式2.2.常用的几种:Id, xpath,className3、XPATH介绍备注:XPath即为XML路径语言,它是一种用来确定XML(标准通用标记...

    本文接着讲解Java+Selenium的知识

    元素定位的重要性

    5dc309a67a6ad672711a567bfceb5226.png

    SELENIUM2中有几种元素定位方法

    2.1 几种定位方式

    4c3651bd84c82eba5c14ba4523b7b7c1.png

    2.2.常用的几种:

    Id, xpath,className

    3、XPATH介绍

    a2ed244b9a6c68e6eca9a00e00943cfa.png

    备注:XPath即为XML路径语言,它是一种用来确定XML(标准通用标记语言的子集)文档中某部分位置的语言

    3.1示例

    示例请打开demo.html, 输入/html/body 表示选择根目录下html下的body

    c5698541525a464a422e0970e6dae972.png

    /body ,会看到没有节点可以被选择,因为/如果用在开头的话,表示根目录,而根目录是html节点

    dafa0137900f38aea8405fc592a4eb78.png

    3.2介绍

    /html/div ,没有节点可以被选择,因为/如果用在中间,表示绝对路径,是上一个节点的子结点,而html的子节点是head与body

    /html//div ,表示选择根目录下的所有的子孙后代节点中的div节点,//表示相对路径

    //div ,表示选择所有的div节点,可以想想/html//div与//div为什么结果是一样的!

    //div/div ,表示选择所有的div节点的子节点中含有div的节点

    //div/div/. ,表示选择//div/div节点的当前层的节点,与//div/div的结果相同

    //div/div/.. ,表示选择//div/div节点的上一层节点,也就是选择一个div节点,该div节点的子节点有div节点。有点绕口,但细细理解,会恍然大悟的

    //div/div/,表示选择//div/div的所有子节点,//div/div会有两个匹配出来的节点,但为什么//div/div/只有一个了呢?这是因为第二个//div/div下面没有子节点了,所以只匹配出来了一个

    //div[@id='input'] ,表示选择一个id为’input’的div节点

    //div[@id='input']/input ,表示选择一个id为’input’的div节点的input子节点

    //table//input[@id='user'] ,表示选择table的子孙后代中id为user的input节点

    //input[@name='identity' and @class='Volvo'] ,有的节点,只用一个属性无法定位出来,必须要用到多个属性进行组合定位,用连接符and。这个XPATH表示选择一个name为identity并且class为Volvo的input节点

    //input[@name='identity' or @class='Volvo'] ,这个多属性组合用的是or的连接符,这个XPATH表示选择一个name为identity,或者class为Volvo的节点,所以,这个XPATH匹配出来了4个节点

    //input[@name='identity' or @class='Volvo'][1] 见图13,我们刚知道了,//input[@name='identity' or @class='Volvo']匹配出4个,我们只需要第一个,怎么办?加index即可://input[@name='identity' or @class='Volvo'][1],请注意,xpath的index是以1开头的,并不是0,请切记!取最后一个,//input[@name='identity' or @class='Volvo'][last()]

    需要特别注意的一个地方:

    //table//tr//input ,这个匹配出来的,有14个节点,但是如果我们需要取到第一个,怎么办?

    有可能会用到://table//tr//input[1],但是我们来看看结果,匹配出来的节点居然是8个,而不是1个,这是因为//table//tr//input[1]是指先匹配出//table下面的所有的tr子孙后代节点,并且再此基础上,再匹配出tr节点的所有的子孙后代中的input结点的第一个,由于tr众多,所以匹配出的结果肯定不是一个,但如何能匹配出1个?也就是说我们需要把众多的tr给固定出一个,这时候再看:

    //table//tr[1]//input[1],这时候就只有一个匹配出来的节点,所以,请大家仔细揣摩这里面的区别,细细体会

    3.3 几个常用函数

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

    3.last():前面已介绍

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

    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)]

    转自知乎:千锋软件测试学院

    展开全文
  • orcale常用命令

    2009-08-04 00:34:59
    下面按类别列出一些ORACLE用户常用数据字典查询使用方法。 1、用户 查看当前用户缺省表空间 SQL>select username,default_tablespace from user_users; 查看当前用户角色 SQL>select * from user_...
  • 视口坐标需要知道滚动条位置才可以进行计算,以下几种方式获取滚动位置 方法 说明 注意 window.innerWidth 视口宽度 包括滚动条(不常用) window.innerHeight 视口高度 包括滚动条(不常用) document....
  • 记住个特殊容错,对极常用的高频词进行特殊编码,可极大提升效率。 容错码与正常编码同时存在,即使你不使用容错方式输入,对于正常使用没有任何影响。 1.“狐狸 猩猩”等带反犬旁词组的严重重码词,我们不对...
  • 了解 U-Boot-1.3.1 代码结构,掌握其移植方法。 【实验环境】 1、Ubuntu 7.0.4发行版 2、u-boot-1.3.1 3、FS2410平台 4、交叉编译器 arm-softfloat-linux-gnu-gcc-3.4.5 【实验步骤】 一、建立自己平台...
  • oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 第一章 Oracle入门 一、 数据库概述 数据库(Database)是按照数据结构来组织、存储和管理数据仓库,它产生于距今五十年前。简单来说是本身可视...
  • 二十三设计模式【PDF版】

    热门讨论 2011-05-30 14:13:49
    有几种画法?艺术大家通常是创造出自己套路,比如明末清初,水墨画法开始成熟,这时画树就不用勾勒这个模式了,而是一笔 下去,浓淡几个叶子,待毛笔水墨要干枯时,画一下树干,这样,一个活生写意树就画出来. 我上面...
  •  8.2.1 公众账号无响应的几种情况 202  8.2.2 计算字符串所占字节数 202  8.3 应用开发最佳实践 204  8.3.1 解析消息创建时间 204  8.3.2 换行符使用 205  8.3.3 网页超链接使用 206  8.3.4 隐藏...
  • 本文接着讲解Java+Selenium的知识元素定位的重要性SELENIUM2中有几种元素定位方法2.1 几种定位方式2.2.常用的几种: Id, xpath,className3、XPATH介绍备注:XPath即为XML路径语言,它是一种用来确定XML(标准通用标记...

    本文接着讲解Java+Selenium的知识

    元素定位的重要性

    a3c714390144d233e11ff679747f4b7a.png

    SELENIUM2中有几种元素定位方法

    2.1 几种定位方式

    83e406ecaab99a0fba3b2424183b103b.png

    2.2.常用的几种:

    Id, xpath,className

    3、XPATH介绍

    846400d3298e598f1556504502abd561.png

    备注:XPath即为XML路径语言,它是一种用来确定XML(标准通用标记语言的子集)文档中某部分位置的语言

    3.1示例

    示例请打开demo.html, 输入/html/body 表示选择根目录下html下的body

    bffcea56de16b0e9756b5c0eec4199fb.png

    /body ,会看到没有节点可以被选择,因为/如果用在开头的话,表示根目录,而根目录是html节点

    672c017167d5a572c2349be34b6a0f21.png

    3.2介绍

    /html/div ,没有节点可以被选择,因为/如果用在中间,表示绝对路径,是上一个节点的子结点,而html的子节点是head与body

    /html//div ,表示选择根目录下的所有的子孙后代节点中的div节点,//表示相对路径

    //div ,表示选择所有的div节点,可以想想/html//div与//div为什么结果是一样的!

    //div/div ,表示选择所有的div节点的子节点中含有div的节点

    //div/div/. ,表示选择//div/div节点的当前层的节点,与//div/div的结果相同

    //div/div/.. ,表示选择//div/div节点的上一层节点,也就是选择一个div节点,该div节点的子节点有div节点。有点绕口,但细细理解,会恍然大悟的

    //div/div/* ,表示选择//div/div的所有子节点,//div/div会有两个匹配出来的节点,但为什么//div/div/*只有一个了呢?这是因为第二个//div/div下面没有子节点了,所以只匹配出来了一个

    //div[@id='input'] ,表示选择一个id为’input’的div节点

    //div[@id='input']/input ,表示选择一个id为’input’的div节点的input子节点

    //table//input[@id='user'] ,表示选择table的子孙后代中id为user的input节点

    //input[@name='identity' and @class='Volvo'] ,有的节点,只用一个属性无法定位出来,必须要用到多个属性进行组合定位,用连接符and。这个XPATH表示选择一个name为identity并且class为Volvo的input节点

    //input[@name='identity' or @class='Volvo'] ,这个多属性组合用的是or的连接符,这个XPATH表示选择一个name为identity,或者class为Volvo的节点,所以,这个XPATH匹配出来了4个节点

    //input[@name='identity' or @class='Volvo'][1] 见图13,我们刚知道了,//input[@name='identity' or @class='Volvo']匹配出4个,我们只需要第一个,怎么办?加index即可://input[@name='identity' or @class='Volvo'][1],请注意,xpath的index是以1开头的,并不是0,请切记!取最后一个,//input[@name='identity' or @class='Volvo'][last()]

    需要特别注意的一个地方:

    //table//tr//input ,这个匹配出来的,有14个节点,但是如果我们需要取到第一个,怎么办?

    有可能会用到://table//tr//input[1],但是我们来看看结果,匹配出来的节点居然是8个,而不是1个,这是因为//table//tr//input[1]是指先匹配出//table下面的所有的tr子孙后代节点,并且再此基础上,再匹配出tr节点的所有的子孙后代中的input结点的第一个,由于tr众多,所以匹配出的结果肯定不是一个,但如何能匹配出1个?也就是说我们需要把众多的tr给固定出一个,这时候再看:

    //table//tr[1]//input[1],这时候就只有一个匹配出来的节点,所以,请大家仔细揣摩这里面的区别,细细体会

    3.3 几个常用函数

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

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

    3.last():前面已介绍

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

    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)]

    展开全文
  • 电信运营商的定位将是平台和网络提供者,采取有效的运营机制鼓励和发展社会IT公司、网站网页制作公司作为代理发展网交会的各项业务。 电信运营商的经济收益来自直接收益和潜在收益两部分。直接收益:一是参展企业...
  • 媒体查询 CSS媒体查询允许开发者基于浏览网站的设备的特性来应用不同的样式申明,最常用的特性是视口宽度。 GCF 谷歌内嵌浏览器框架, 使用此插件,用户可以通过Internet Explorer的用户界面,以Chrome内核的渲染方式...
  • JavaScript 空间坐标

    2020-08-19 15:03:06
    首先参考画布分为视口(窗口)与文档的含义 ...视口坐标需要知道滚动条位置才可以进行计算,以下几种方式获取滚动位置 方法 说明 注意 window.innerWidth 视口宽度 包括滚动条(不常用) window.

    首先参考画布分为视口(窗口)与文档的含义

    网页很多都是多屏,所以文档尺寸一般大于视口尺寸

    视口尺寸不包括浏览器工具条、菜单、标签、状态栏等

    当打开控制台后,视口尺寸相应变小

    文档像position定位,视口类似fixed定位

    文档坐标在页面滚动时不发生改变

    视口坐标的操作需要考虑滚动条的位置

    image-20200818233432727

    视口坐标需要知道滚动条位置才可以进行计算,有以下几种方式获取滚动位置

    方法 说明 注意
    window.innerWidth 视口宽度 包括滚动条(不常用)
    window.innerHeight 视口高度 包括滚动条(不常用)
    document.documentElement.clientWidth 视口宽度
    document.documentElement.clientHeight 视口高度
      注意,均是以像素为单位,且视口尺寸不包括浏览器工具条、菜单、标签、状态栏等

    元素在页面中拥有多个描述几何数值的尺寸,下面截图进行了形象的描述。

    image-20200819123923375

    方法 说明 备注
    element.getBoundingClientRect 返回元素在视口坐标及元素大小,不包括外边距,width/height与offsetWidth/offsetHeight匹配 窗口坐标
    element.getClientRects 行级元素每行尺寸位置组成的数组
    element.offsetParent 拥有定位属性的父级,或body/td/th/table 对于隐藏元素/body/html值为null
    element.offsetWidth 元素宽度尺寸,包括内边距与边框和滚动条
    element.offsetHeight 元素高度尺寸,包括内边距与边框和滚动条
    element.offsetLeft 相对于祖先元素的X轴坐标
    element.offsetTop 相对于祖先元素的Y轴坐标
    element.clientWidth 元素宽度,不包含边框,只包含内容和内边距,行元素尺寸为0
    element.clientHeight 元素高度,不包含边框,只包含内容和内边距,行元素尺寸为0
    element.clientLeft 内容距离外部的距离,滚动条在左侧时包括滚动条尺寸
    element.clientTop 内容距离顶部的距离,滚动条在顶部时包括滚动条尺寸
    element.scrollWidth 元素宽度,内容+内边距+内容溢出的尺寸
    element.scrollHeight 元素高度,内容+内边距+内容溢出的尺寸
    element.scrollLeft 水平滚动条左侧已经滚动的宽度
    element.scrollTop 垂直滚动条顶部已经滚动的高度
      为什么不要使用getComputedStyle

    尺寸设置auto时获取结果不可用

    由于滚动条的存在,不同浏览器返回结果不同

    元素没有设置尺寸获取不到

    getBoundingClientRect

    使用getBoundingClientRect获取元素矩形信息

    Document
      计算结果的矩形尺寸不包括外边距

    bottom: 340
    height: 330
    left: 18
    right: 348
    top: 10
    width: 330
    x: 18
    y: 10
      getClientRects

    多行元素分别返回每行所占的尺寸,下面的行元素将为每行返回矩形尺寸

    Document

    网页很多都是多屏,所以文档尺寸一般大于视口尺寸,当打开控制台后,视口尺寸相应变小。网页很多都是多屏,所以文档尺寸一般大于视口尺寸,当打开控制台后,视口尺寸相应变小。网页很多都是多屏,所以文档尺寸一般大于视口尺寸,当打开控制台后,视口尺寸相应变小。

    // 第一行信息 bottom: 29.33333396911621 height: 21.33333396911621 left: 8 right: 1683.5555419921875 top: 8 width: 1675.5555419921875 x: 8 y: 8

    // 第二行信息
    bottom: 50.66666793823242
    height: 21.33333396911621
    left: 8
    right: 264
    top: 29.33333396911621
    width: 256
    x: 8
    y: 29.33333396911621
      Js提供了方法获取指定坐标上的元素,如果指定坐标点在视口外,返回值为null

    坐标都是从左上角计算,这与CSS中的right/bottom等不同

    窗口坐标类似于position:fixed

    文档坐标类似于position:absolute

    方法 说明
    element.elementsFromPoint 返回指定坐标点所在的元素集合
    element.elementFromPoint 返回指定坐标点最顶级的元素
      元素集合

    返回指定坐标点上的元素集合

    Document
      顶级元素

    返回坐标点上的顶级元素

    Document
    方法 说明 参数说明 window.pageXOffset 文档相对窗口水平滚动的像素距离 window.pageYOffset 文档相对窗口垂直滚动的像素距离 element.scrollLeft() 元素X轴滚动位置 element.scrollTop() 元素Y轴滚动位置 element.scrollBy() 按偏移量进行滚动内容 参数为对象,{top:垂直偏移量,left:水平偏移量,behavior:'滚动方式'} element.scroll() 或 element.scrollTo() 滚动到指定的具体位置 参数为对象,{top:X轴文档位置,left:Y轴文档位置,behavior:'滚动方式'} element.scrollLeft 获取和设置元素X轴滚动位置 这是属性,设置X轴文档位置 element.scrollTop 获取和设置元素Y轴滚动位置 这是属性,设置Y轴文档位置 element.scrollIntoView(bool) 定位到顶部或底部 参数为true元素定位到顶部,为false定位到窗口底部   使用scrollBy滚动文档 Document   使用scroll滚动到指定位置 Document   使用元素scrollIntoView方法实现滚动操作,参数可以是布尔值或对象。

    标签锚点效果类似。

    参数为 true时顶部对齐,相当于{block: “start”}

    参数为 false时底部对齐,相当于{block: “end”}

    定义 {behavior:smooth}为平滑滚动

    Document

    头部

    TOP BOTTOM

    底部

    展开全文
  • 常用 Convert 方法有: 第2页 C#(WINFORM)学习 C# Convert.ToBoolean Convert.ToByte Convert.ToChar Convert.ToDateTime Convert.ToDecimal Convert.ToDouble Convert.ToInt16 Convert.ToInt32 Convert.ToInt64 ...
  • Django 内置查询表达式

    千次阅读 2019-02-15 14:47:56
    django 内置了很多查询表达式,建议过一遍 django ...django使用filter时为了提高查找效率,以下几种常用方法:   (1)contains contains是 精确大小写 qs.filter(name__contains="e") SQL语句...
  • FCKeditor使用指南

    2008-10-17 22:34:28
    4.5.3 加上几种常用的字体 13 4.5.4 修改“回车” 和 “Shift + 回车”的换行行为 13 4.5.5 修改编辑区的样式文件 14 4.5.6 更换表情图片 14 4.5.7 编辑区域的右键菜单功能 14 4.6 fckconfig.js配置参数选项说明 15 ...
  • java 面试题 总结

    2009-09-16 08:45:34
    assertion(断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制。在实现中,assertion就是在程序中的一条语句,它对一个boolean表达式进行检查,一个正确程序必须保证这个boolean表达式的值为...
  • 数据的逻辑结构根据需要可以表示成多种存储结构,常用的存储结构顺序、链接等存储结构。 顺序存储方式主要用于线性的数据结构,它把逻辑上相邻的数据元素存储在物理上相邻的存储单元里,结点之间的关系由存储...
  • VC_中连接Oracle数据库的几种方法.pdf VC_串口通信中多线程技术应用研究.pdf VC_和COM预测控制算法仿真研究.pdf VC_和Excel对象接口研究与应用.pdf VC_和Matlab混合编程语音识别研究.pdf VC_实现Excel操作...
  • VC_中连接Oracle数据库的几种方法.pdf VC_串口通信中多线程技术应用研究.pdf VC_和COM预测控制算法仿真研究.pdf VC_和Excel对象接口研究与应用.pdf VC_和Matlab混合编程语音识别研究.pdf VC_实现Excel操作...
  • VC_中连接Oracle数据库的几种方法.pdf VC_串口通信中多线程技术应用研究.pdf VC_和COM预测控制算法仿真研究.pdf VC_和Excel对象接口研究与应用.pdf VC_和Matlab混合编程语音识别研究.pdf VC_实现Excel操作...
  • VC_中连接Oracle数据库的几种方法.pdf VC_串口通信中多线程技术应用研究.pdf VC_和COM预测控制算法仿真研究.pdf VC_和Excel对象接口研究与应用.pdf VC_和Matlab混合编程语音识别研究.pdf VC_实现Excel操作...
  • 如何将PPT转word

    2011-12-10 22:58:29
    不过现在了PDFTools这款神奇工具后,你就可以轻松地把PDF文档的内容转换成HTM、TXT和BMP这三种常用的文件格式。 为了PDFTools能更好地为我们服务,我们首先得对它进行一番设置。在主界面中点击菜单“文件→设置”...

空空如也

空空如也

1 2 3 4 5 ... 7
收藏数 135
精华内容 54
关键字:

常用的定位文档的方法有几种