元素过滤器(Element Filters)
元素过滤器可以同选择器一起使用, 从一堆候选元素中进行筛选。它们当前仅使
用于’name’元素选择器。
过滤器看起来更像是选择器,也就是:
filterType=argument
所支持的元素过滤器为:
value=valuePattern
匹配元素时基于它们的值进行匹配。这在对一堆相似命名的关联按钮的筛
选中显得尤其有用。
index=index
选择单个元素基于其在列表中的位置(从0开始)。
字符串匹配式样
有各种各样的式样语法可用于匹配字符串值:
·glob:pattern: 用″glob″去匹配一个字符串。 ″Glob″是一种用于命令行shells
的代表性的有限正则表达式语法。 在一个glob式样中,″*″代表任意序列字符集,
而
″?″则代表任意单个字符。 Glob式样匹配整个字符串。
· regexp:regexp: 使用正则表达式匹配字符串。可使用所有的JavaScript正则
表达式。
如果没有指定式样前缀, Selenium假定其为″glob″式样。
SeleniumActions
addLocationStrategy (strategyName,functionDefinition)
为selenium定义一个新的函数用于定位页面上的元素。例如,如果你定义了
一个方法″foo″,并运行了click(″foo=blah″),我们将运行你的函数,传递给你字
符串″blah″,并点击该函数所返回的元素,如果返回为 null,则抛出一个″Element
not found″的错误。我们将给该函数传递三个参数。
·locator: 用户传递过来的字符串
·inWindow: 当前所选中的窗体
·inDocument: 当前所选中的文档
如果未找到相应的元素,则函数必须返回一个null。
参数:
·strategyName – 定义的方法名;只能使用字母[a-zA-Z],不能包含空格
或其他标点符号。
· functionDefinition – 在JavaScript函数中的一个定义body的字符串。
如: return inDocument.getElementById(locator);
addSelection (locator, optioLocator)
为通过使用选择定位器,在一个可多选元素中所选择的集合添加一个
selection。 @查看#doSelect 关于选择定位器的细节。
参数:
·locator – 用于指定一个多选框的元素定位器
·optionLocator – 一个选择定位器(默认为标签)
allowNativeXpath (allow)
指定Selenium是否使用XPath的本地浏览执行(如果有可用的本地版本);如果传
递的值为″false″, 我们将使用 pure-JavaScript xpath库。使用 pure-JS xpath库可以
提高 xpath元素定位器在不同浏览器中的一致性, 但其执行速度将大大低于本地
执行。
参数:
·
allow – Boolean,true意味着我们更愿意使用本地XPath;false则意味
着我们将只使用JS XPath
altKeyDown()
按下alt键并保持其按下状态,直到doAltUp()被调用或一个新的页面被加载。
altKeyUp()
释放alt键
answerOnNextPrompt (answer)
通知Selenium返回下一次JavaScript prompt[window.prompt()]所指定的回
答字符串。
参数:
·answer – 对弹出的提示所给与的回答
assignId (locator,identifier)
临时为指定元素设定一个″id″属性, 使你可以在将来使用其 ID, 以代替缓慢且
更复杂的 XPath。该 ID将在页面重载后消失。
参数:
·locator – 指向某个元素的元素定位器
·identifier – 为指定元素作为ID使用的字符串
break()
暂停当前正在进行的测试, 并等待用户按下继续按钮。 这个命令对于调试非常
有用, 但使用时要特别小心, 因为他将强制暂停自动化测试, 直到用户手动操
作。
check(locator)
勾选一个关联性按钮(checkbox/radio)
参数:
·locator – 一个元素定位器
chooseCancelOnNextConfirmation()
默认情况下, Selenium的重载window.confirm()函数将返回true, 等同于用
户手动点击OK;执行该命令后, 下一次调用confirm()将返回false, 等同于用
户手动点击了Cancel。 Selenium对后来的确认动作将继续使用默认行为,自
动返回true(OK),除非/直到你为每个确认动作明确的调用此命令。
chooseOkOnNextConfirmation()
撤销调用chooseCancelOnNextConfirmation的效果。注意, Selenium的重载
window.confirm()函数通常将自动返回true,等同于用户手动点击OK,因此
你没有必要使用此命令, 除非由于某种原因使你在下一次确认动作前不得不改
变你先前的想法。在任意确认动作后, Selenium对后来的确认动作将继续使用默认行为,自动返回true(OK),除非/直到你为每个确认动作明确的调用
chooseCancelOnNextConfirmation()。
click(locator)
点击一个链接、 按钮、 多选框或单选框。 如果该点击事件导致了新的页面加载(如同链接通常所作的),将调用waitForPageToLoad。
参数:
locator -一个元素定位器
clickAt(locator,coordString)
点击一个链接、 按钮、 多选框或单选框。 如果该点击事件导致了新的页面加载(如同链接通常所作的),将调用waitForPageToLoad。
参数:
locator -一个元素定位器
coordString – 指定由定位器返回的鼠标事件相关联的元素x,y 坐标(也就是 – 10,20)
close()
模拟用户点击弹出窗体或表单标题栏上的″关闭″按钮。
controlKeyDown()
按下control键并保持其按下状态,直到doControlUp()被调用或一个新的页
面被加载。
controlKeyUp()
释放control键
createCookie(nameValuePair,optionsString)
创建一个新的cookie,除非你清楚的指定该cookie的路径,否则其路径和域将与当前测试的页面相同。
参数:
nameValuePair – 该cookie的名称和值,使用如下格式″name=value″
optionsString – 该cookie的选项。当前支持的选项包括’path’和’max_age’。 optionsString的格式为”path=/path/,max_age=60”。选项的顺序无关紧要
元素过滤器(Element Filters)的更多相关文章
- 深入理解DOM节点类型第五篇——元素节点Element
× 目录 [1]特征 [2]子节点 [3]特性操作[4]attributes 前面的话 元素节点Element非常常用,是DOM文档树的主要节点:元素节点是html标签元素的DOM化结果.元素节点主要 ...
- 子元素过滤器nth-child解释
jQuery中的子元素过滤器nth-child是指:选取每个父元素下的第index个子元素或者奇偶元素(index从1算起) 这里有几点要注意: 1. index 从1开始算 2. 过滤器filter ...
- jQuery编程基础精华02(属性、表单过滤器,元素的each,表单选择器,子元素过滤器(*),追加方法,节点,样式操作)
属性.表单过滤器 属性过滤选择器: $("div[id]")选取有id属性的<div> $("div[title=test]")选取title属性为 ...
- 【css】主要的块状元素(block element)和内联元素(inline element行内元素)
内联元素:只在行内发生作用,设置宽高不起作用,不会影响文字内容,使其换行等.竖直方向和间距也不起作用 display可以强制转换行内元素和块状元素,还可以取消显示none 块元素(bloc ...
- 【算法31】寻找数组的主元素(Majority Element)
题外话 最近有些网友来信问我博客怎么不更新了,是不是不刷题了,真是惭愧啊,题还是在刷的,不过刷题的频率没以前高了,看完<算法导论>后感觉网上很多讨论的题目其实在导论中都已经有非常好的算法以 ...
- Arcgis Engine(ae)接口详解(8):临时元素(element)
//主地图的地图(map)对象 IMap map = null; IActiveView activeView = null; //IGraphicsContainer用于操作临时元素,可以通过map ...
- ng-click得到当前元素,angular.element()用法
<!DOCTYPE html> <html> <head> <title></title> <script src="lib ...
- css中margin重叠和一些相关概念(包含块containing block、块级格式化上下文BFC、不可替换元素 non-replaced element、匿名盒Anonymous boxes )
平时在工作中,总是有一些元素之间的边距与设定的边距好像不一致的情况,一直没明白为什么,最近仔细研究了一下,发现里面有学问:垂直元素之间的margin有有互相重叠的情况:新建一个BFC后,会阻止元素与外 ...
- 30、vue 过滤器(filters)
filter Vue.js 允许你自定义过滤器,可被用于一些常见的文本格式化.过滤器可以用在两个地方:双花括号插值和 v-bind 表达式 (后者从 2.1.0+ 开始支持).过滤器应该被添加在 Ja ...
随机推荐
- response.sendRedirect()重新定向的乱码问题
这里response.sendRedirect("YPbianhaoModify.jsp?jinhuoshang="+jinhuoshang+"&jinhuori ...
- 是否用new来新建对象
class A{ }: 1.不使用new来新建对象 A a: 使用完后什么也不用做,系统自动调用析构函数.使用空间是栈. 2.使用new来新建对象 A* a=new A(); delete a;/ ...
- BZOJ 2433 智能车比赛(计算几何+最短路)
题目链接:http://61.187.179.132/JudgeOnline/problem.php?id=2433 题意:若干个矩形排成一排(同一个x之上最多有一个矩形),矩形i和i+1相邻.给定两 ...
- 序列化、反序列化(实体类或要序列化的对象类必须实现Serializable接口)
package com.phone.shuyinghengxie; import java.io.Serializable; /* 一个类的对象要想序列化成功,必须满足两个条件: 该类必须实现 jav ...
- ABAP Enhancement:第一部分
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- CUBRID学习笔记 3 net连接数据库并使用cubrid教程示例
接上文 数据库安装好后,也可以测试语句了. 下面我们用c#写一个控制台程序,连接数据库,并读取数据. 一 下载驱动 net版的下 CUBRID ADO.NET Data Provider 9.3.0 ...
- 先来个xmpp学习连接
http://my.oschina.net/SoulJa/blog?catalog=3340253&temp=1468228088114 http://my.oschina.net/iOSli ...
- 函数(def)
一.为什么要使用函数: 面向过程的编程在代码里有很多代码是可以重复利用的,如果使用面向过程编程会使代码显得纷繁复杂,不利于他人和自己日后的阅读.而在函数式编程里,则可以把每个可重复利用的功能封装在一个 ...
- x名称空间
XAML代码的WPF程序都需要通过语句:xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml",x就是用来映射xmlns:x= ...
- NYOJ214
单调递增子序列(二) 时间限制:1000 ms | 内存限制:65535 KB 难度:4 描述 给定一整型数列{a1,a2...,an}(0<n<=100000),找出单调递增最长 ...