概述:

本文详述8种控件对应的class,及可对其进行的操作

回顾:

回顾一下,下文中的工具设计思路部分:

http://blog.csdn.net/kaka1121/article/details/51878346

详解:

如上图所示,8种控件对应的class,及可对其进行的操作已经罗列上去了,下面附上具体的API

1. 输入控件:Text

/**
 * 进入iframe,找到控件
 * 找到文本框或文本区域,先清除内容,再填写内容
 * 包含重试和超时机制
 * 支持设置预先等待时间,以方便肉眼能跟上(通过设置pause变量)
 */
   public void input(String value);

/**
 * 进入iframe,找到控件
 * 找到文本框或文本区域,清除内容
 * 包含重试和超时机制
 * 支持设置预先等待时间,以方便肉眼能跟上(通过设置pause变量)
 */
   public void clear();
/**
 * 进入iframe,找到控件
 * 返回文本控件的value(getAttribute("value"))
 * 包含重试和超时机制
 */
   public String getText();
/**
 * 进入iframe,找到控件
 * 点击控件
 * 包含重试和超时机制
 * 支持设置预先等待时间,以方便肉眼能跟上(通过设置pause变量)
 */
public void click();

 

2. 点击控件: Click

/**
 * 进入iframe,找到控件
 * 点击控件
 * 包含重试和超时机制
 * 支持设置预先等待时间,以方便肉眼能跟上(通过设置pause变量)
 */
public void click();

 

3. 下拉控件: Select

/**
 * 进入iframe,找到控件
 * 找到下拉菜单,并根据展示的文字(VisibleText),选中该选项
 * 包含重试和超时机制
 * 支持设置预先等待时间,以方便肉眼能跟上(通过设置pause变量)
 */
public void selectByVisibleText(String option);
/**
 * 进入iframe,找到控件
 * 找到下拉菜单,并根据展示的文字(VisibleText),选择除该选项之外的所有选项
 * 包含重试和超时机制
 * 支持设置预先等待时间,以方便肉眼能跟上(通过设置pause变量)
 */
   public void deselectByVisibleText(String option);
/**
 * 进入iframe,找到控件
 * 找到下拉菜单,并根序号,选中该选项
 * 包含重试和超时机制
 * 支持设置预先等待时间,以方便肉眼能跟上(通过设置pause变量)
 */
   public void selectByIndex(int index);
/**
 * 进入iframe,找到控件
 * 找到下拉菜单,并根序号,选择除该选项之外的所有选项
 * 包含重试和超时机制
 * 支持设置预先等待时间,以方便肉眼能跟上(通过设置pause变量)
 */
   public void deselectByIndex(int index);

/**
  * 进入iframe,找到控件
  * 找到下拉菜单,并根据值(value),选中该选项
  * 包含重试和超时机制
  * 支持设置预先等待时间,以方便肉眼能跟上(通过设置pause变量)
  */
   public void selectByValue(String value);
/**
  * 进入iframe,找到控件
  * 找到下拉菜单,并根据值(value),选择除该选项之外的所有选项
  * 包含重试和超时机制
  * 支持设置预先等待时间,以方便肉眼能跟上(通过设置pause变量)
  */
   public void deselectByValue(String value);

/**
 * 进入iframe,找到控件
 * 获取下拉菜单的所有可选项
 * 包含重试和超时机制
 * 返回MAP:
 *           "value", webElement.getAttribute("value")
 *       "text", webElement.getText()
 */
   public List<Map<String, String>> getAllOptions();
/**
 * 进入iframe,找到控件
 * 获取下拉菜单的所有已选择的选项
 * 包含重试和超时机制
 * 返回MAP:
 *           "value", webElement.getAttribute("value")
 *       "text", webElement.getText()
 */
   public List<Map<String, String>> getAllSelectedOptions();

/**
 * 进入iframe,找到控件
 * 清除下拉菜单为初始状态
 * 如果是多选的,则全部不选
 * 如果是单选的,则选中序号为0的
 * 包含重试和超时机制
 * 支持设置预先等待时间,以方便肉眼能跟上(通过设置pause变量)
 */
   public void clear();

 

4. 点选控件: Check

/**
 * 进入iframe,找到控件
 * 勾选控件(radio, checkbox),勾选失败则抛异常
 * 包含重试和超时机制
 * 支持设置预先等待时间,以方便肉眼能跟上(通过设置pause变量)
 */
   public void check();

/**
 * 进入iframe,找到控件
 * 取消勾选控件(radio, checkbox),勾选失败则抛异常
 * 包含重试和超时机制
 * 支持设置预先等待时间,以方便肉眼能跟上(通过设置pause变量)
 */
   public void unCheck() ;   

/**
 * 进入iframe,找到控件
 * 查看是否勾选控件(radio, checkbox)
 * 包含重试和超时机制
 */
   public boolean isChecked();
 

5. 表格控件: Table

/**
 * 进入iframe,找到控件
 * 得到table中所有单元格的文本值
 * 可设置等待时间,以便table完全加载完成
 * @param xpath  用于得到table对象
 * @return 单元格中的文本值列表
 */
public List<List<String>> getTableContents(int waitTime);
/**
 * 进入iframe,找到控件
 * 得到table中所有单元格的文本值
 * @param xpath  用于得到table对象
 * @return 单元格中的文本值列表
 */
public List<List<String>> getTableContents();

/**
 * 进入iframe,找到控件
 * 从table中指定的的单元格中得到文本值, 行列从1开始.
 * 可设置等待时间,以便table完全加载完成
 * @param row,col 为了使用者便于
 * @return 单元格中的文本值
 */
public String getTableCellText(int row, int col, int waitTime);
/**
 * 进入iframe,找到控件
 * 从table中指定的的单元格中得到文本值, 行列从1开始.
 * @param row,col 为了使用者便于
 * @return 单元格中的文本值
 */
   public String getTableCellText(int row, int col);

/**
 * 进入iframe,找到控件
 * 得到table的大小、行数、列数
 * 可设置等待时间,以便table完全加载完成
 * @param xpath  用于得到table对象
 * @return 行数、列数
 */
   public TableSize getTableSize(int waitTime);

/**
 * 进入iframe,找到控件
 * 得到table的大小、行数、列数
 * @param xpath  用于得到table对象
 * @return 行数、列数
 */
public TableSize getTableSize();

 

6. 日历控件: Calendar

/**
 * 进入iframe,找到控件
 * 先清除日期,再填写日期
 * 若日期格式不正确,抛异常
 * 包含重试和超时机制
 */
public void input(String value);
/**
 * 进入iframe,找到控件
 * 清除日期
 * 若日期格式不正确,抛异常
 * 包含重试和超时机制
 */
   public void clear();

/**
 * 进入iframe,找到控件
 * 返回控件的value(getAttribute("value"))
 * 包含重试和超时机制
 */
   public String getText();

7. 文本控件: PlainText

/**
 * 进入iframe,找到控件
 * 文本或文本列表,是否都存在于当前页面,只要有一个不存在,则返回false
 * 包含重试和超时机制
 * 不支持设置预先等待时间(通过设置pause变量)
 *
 */
public boolean isExists();

8. 上传控件: FileInput

/**
 * 进入iframe,找到控件
 * 根据本地路径,上传文件
 * 注意filePath必须是绝对路径
 */
   public void uploadFile(String filePath);


Web自动化框架LazyUI使用手册(6)--8种控件对应的class,及可对其进行的操作的更多相关文章

  1. Web自动化框架LazyUI使用手册(4)--控件抓取工具Elements Extractor详解(批量抓取)

    概述 前面的一篇博文详细介绍了单个控件抓取的设计思路&逻辑以及使用方法,本文将详述批量控件抓取功能. 批量抓取:打开一个web页面,遍历页面上所有能被抓取的元素,获得每个元素的iframe.和 ...

  2. Web自动化框架LazyUI使用手册(3)--单个xpath抓取插件详解(selenium元素抓取,有此插件,便再无所求!)

    概述 前面的一篇博文粗略介绍了基于lazyUI的第一个demo,本文将详细描述此工具的设计和使用. 元素获取插件:LazyUI Elements Extractor,作为Chrome插件,用于抓取页面 ...

  3. Web自动化框架LazyUI使用手册(2)--先跑起来再说(第一个测试用例-百度搜索)

    作者:cryanimal QQ:164166060 上篇文章中,简要介绍了LazyUI框架,本文便来演示,如何从无到有快速搭建基于lazyUI的工程,并成功运行第一个测试用例. 本文以百度搜索为例,选 ...

  4. Web自动化框架LazyUI使用手册(1)--框架简介

    作者:cryanimal QQ:164166060 web端自动化简介 web端自动化,即通过自动化的方式,对Web页面施行一系列的仿鼠标键盘操作,以达到对Web页面的功能进行自动化测试的目的. 其一 ...

  5. Web自动化框架LazyUI使用手册(7)--浏览器常用操作API

      LazyUI框架中,BrowserEmulator类提供了大量的浏览器操作,常用的API列举如下: 1. 基本操作 /** * Open the URL * 打开一个URL * @param ur ...

  6. Web自动化框架LazyUI使用手册(5)--模板工程:LazyUI-template详解

    概述: LazyUI-template: 提供Maven管理的,基于Spring+Testng的,包含常用浏览器driver的,方便连接各种数据库的java模板工程,并提供以百度搜索为例的第一个测试用 ...

  7. Web自动化框架LazyUI使用手册(8)--excel数据驱动详解(ExcelDataProvider)

    概述 框架提供了excel数据驱动方式运行测试用例的工具,本文将针对数据驱动,进行详细演示. 详见类:lazy.test.ui.browser.ExcelDataProvider 被测对象: http ...

  8. Java+Selenium自动化对非输入框的日历或日期控件的处理

    如图:          1.问题描述: 在应用selenium实现web自动化时,经常会遇到处理日期控件点击问题,手工很简单,可以一个个点击日期控件选择需要的日期,但自动化执行过程中,完全复制手工这 ...

  9. APP自动化框架LazyAndroid使用手册(2)--元素自动抓取

    作者:黄书力 概述 前面的一篇博文简要介绍了安卓自动化测试框架LazyAndroid的组成结构和基本功能,本文将详细描述此框架中元素自动抓取工具lazy-uiautomaterviewer的使用方法. ...

随机推荐

  1. [LeetCode] Course Schedule III 课程清单之三

    There are n different online courses numbered from 1 to n. Each course has some duration(course leng ...

  2. [LeetCode] Complex Number Multiplication 复数相乘

    Given two strings representing two complex numbers. You need to return a string representing their m ...

  3. 计蒜客NOIP2017提高组模拟赛(三)day2-直线的交点

    传送门 简单几何+逆序对 发现当两条直线甲乙与平板的交点在上面甲在较左的位置,那么下面甲在较右的位置就可以相交 然后把上面的位置排下序,下面离散化+树状数组即可 #include<cstdio& ...

  4. ●HDU 2871 Memory Control(Splay)

    ●赘述题目 四种操作: ○Reset:将整个内存序列清空. ○New a:在尽量靠左的位置新建一个长度为a的内存块,并输出改内存块起始位置.(各个内存块即使相邻也不会合并..) ○Free a:将a点 ...

  5. poj 1755 半平面交+不等式

    Triathlon Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 6461   Accepted: 1643 Descrip ...

  6. 洛谷4月月赛R1 Happy Poppin' Party Train

    来自FallDream的博客,未经允许,请勿转载,谢谢. 听学长说的就来玩一玩,随便乱打打  没想到一堆人被取消了成绩,莫名混了个Rank3 还有第一题数据肯定是有问题 --------------- ...

  7. SparkSQL——用之惜之

    SparkSql作为Spark的结构化数据处理模块,提供了非常强大的API,让分析人员用一次,就会为之倾倒,为之着迷,为之至死不渝.在内部,SparkSQL使用额外结构信息来执行额外的优化.在外部,可 ...

  8. n个并发进程共用一个公共变量Q,写出用信号灯实现n个进程互斥的程序描述,给出信号灯值得取值范围,并说明每个取值范围的物理意义。

    答: var mutex: semaphore:=1; begin cobegin process i : begin   // i = 1,2,……,n repeat P(mutex); 对公共变量 ...

  9. 以太坊MetaMask钱包插件简介

    MetaMask是一个以太坊钱包插件,虽然只能在Chrome浏览器中使用,但作为以太坊钱包的metamask却很受以太坊开发者欢迎. MetaMask 评价(5★):安装设置:★★★★界面操作:★★★ ...

  10. Button 使用Command 按钮置灰未更新

    当Button绑定了Command,按钮在窗口弹出.或者其它事件时,会自动置灰. 有时,异步执行时间较长时,界面一些绑定了命令的Button,State不会变化,会一直置灰. 直到再次转移Focus. ...