public class FindSelectElement extends FindMultiElement<FindSelectElement>
文件名:SelectBy.java
用途: 提供在辅助化测试中,通过一个元素定位方式,获取下拉选项型元素(控件)的方法。通过元素的定位方式,自动 识别下拉选项元素的类型(标准下拉选项1与非标准下拉选项2),并根据其类型获取到下拉 选项的元素。
注解:
<select name='select'>
<option>男</option>
<option>女</option>
</select>
<div name='select'>
<div name='option'>男</div>
<div name='option'>女</div>
</div>
注意:若下拉选项为标准下拉选项,其元素定位方式只需要定位到select标签即可,若为非标准下拉选项,则需要
将元素定位到能获取到所有下拉选项的元素上,以上述html代码为例,使用xpath对以上两个控件定位,则分别为:
编码时间:2020年11月11日上午8:12:58
修改时间:2020年11月11日上午8:12:58
| Modifier and Type | Field and Description |
|---|---|
static String |
SELECT_TAGNAME
定义标准下拉选项的tagname
|
firstEmptyaction, brower, elementData, elementList, isAutoSwitchIframe, read| Constructor and Description |
|---|
FindSelectElement(AbstractBrower brower)
构造方法,初始化浏览器对象
|
| Modifier and Type | Method and Description |
|---|---|
FindSelectElement |
find(String elementName,
String... linkKeys)
用于指定查找的元素集合名称,二次查找元素时,将覆盖上一次查找的元素。调用该方法在
无法查到页面元素时,其不会抛出
TimeoutException异常 |
Element |
getElement(String selectText)
用于获取元素集合中指定内容的元素。其元素内容可以调用
setReadArributeName(String)方法进行设置。
若元素所传的元素内容不在当前元素内容集合中时,该方法将不会抛出异常,但当调用
Element.getWebElement()方法时,则会抛出元素不存在异常 |
boolean |
removeElement(int index)
用于移除元素集合中的指定下标的元素。其下标所传入的数字即为元素所在的真实下标,可参见
FindMultiElement.getElement(int)方法的参数说明。若未调用FindMultiElement.find(String, String...)
方法对元素进行查找,或者查无元素时,调用该方法将不进行任何操作 |
boolean |
removeElement(String selectText)
用于根据选项内容移除元素
|
void |
setReadArributeName(String attributeName)
用于设置获取文本时读取的属性名称,即在调用
getElement(String)方法时,其元素内容的来源。 |
getAllElement, getElement, setFirstIsEmpty, sizeautoSwitchContext, autoSwitchFrame, clearAction, findElement, getBy, getElementData, recognitionElement, setAction, setAutoSwitchIframe, setReadMode, setWaitTime, switchAppNativeContext, switchFrame, switchParentFrame, switchRootFrame, switchWebViewContext, toElementIndexpublic static final String SELECT_TAGNAME
public FindSelectElement(AbstractBrower brower)
brower - AbstractBrower类对象public void setReadArributeName(String attributeName)
用于设置获取文本时读取的属性名称,即在调用getElement(String)方法时,其元素内容的来源。
该方法存在设置一个特殊的属性值“text”(默认),表示获取元素的文本节点内容,其他的值均为 设置读取的属性值,建议设置的属性值的内容不存在重复,否则获取到的元素可能与预期不符。
注意:调用该方法时将自动获取一次元素内容,若未调用find(String, String...)方法查找
元素或查找的元素不存在时,调用该方法仅设置属性值。设置的属性名称不区分大小写
attributeName - 属性名称public FindSelectElement find(String elementName, String... linkKeys)
FindMultiElementTimeoutException异常find in class FindMultiElement<FindSelectElement>elementName - 元素名称linkKeys - 外链词语public Element getElement(String selectText)
setReadArributeName(String)方法进行设置。
若元素所传的元素内容不在当前元素内容集合中时,该方法将不会抛出异常,但当调用
Element.getWebElement()方法时,则会抛出元素不存在异常selectText - 元素的内容public boolean removeElement(int index)
FindMultiElementFindMultiElement.getElement(int)方法的参数说明。若未调用FindMultiElement.find(String, String...)
方法对元素进行查找,或者查无元素时,调用该方法将不进行任何操作removeElement in class FindMultiElement<FindSelectElement>index - 元素下标public boolean removeElement(String selectText)
selectText - 下拉选项内容Copyright © 2024. All rights reserved.