概述:

本文详述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. javaIO流实现文件拷贝

    package com.java.demo; import java.io.*; public class CopyDemo { public static void main(String[] ar ...

  2. 网易云安全两篇论文入选计算机视觉顶级会议ICCV

    本文由  网易云发布. 10月22日至29日,全球计算机视觉顶尖专家们共聚威尼斯,参加ICCV2017国际计算机视觉大会,就领域内最新成果展开集中研讨,大会论文集也代表了计算机视觉领域最新的发展方向和 ...

  3. Caffe的运行mnist手写数字识别

    老规矩,首先附上官方教程:http://caffe.berkeleyvision.org/gathered/examples/mnist.html 1.必要软件 因为Caffe中使用的是Linux才能 ...

  4. [SDOI 2011]消耗战

    Description 题库链接 给你一棵 \(n\) 个节点根节点为 \(1\) 的有根树,有边权. \(m\) 次询问,每次给出 \(k_i\) 个关键点.询问切断一些边,使这些点到根节点不连通, ...

  5. WISCO信息组NOIP模拟赛-部落冲突

    传送门 首先肯定考虑树剖,这里没有要求区间加,所以可以用树状数组维护,不会卡常的 这里是边权,可以转化为点权:让每条边连接的较深的节点的点权等于边权即可,然后计算的时候减去lca #include&l ...

  6. poj 1811 随机素数和大数分解(模板)

    Sample Input 2 5 10 Sample Output Prime 2 模板学习: 判断是否是素数,数据很大,所以用miller,不是的话再用pollard rho分解 miller : ...

  7. [POI2000] 最长公共子串

    给出几个由小写字母构成的单词,求它们最长的公共子串的长度. 任务 从文件中读入单词 计算最长公共子串的长度 输出结果到文件 输入 文件的第一行是整数 n,1<=n<=5,表示单词的数量.接 ...

  8. Orz

    OR: 说实话,感觉Virtual Judge挺好使的,至少到现在,Uva都没注册成功过QAQ,估计是校园网的问题 不得不说现在课越来越多,而且对于我们这种学校ACM才开展两年的来说,时间真的好有限, ...

  9. Linux input子系统 io控制字段【转】

    转自:http://www.cnblogs.com/leaven/archive/2011/02/12/1952793.html http://blog.csdn.net/guoshaobei/arc ...

  10. cmake 没有那个目录

    问题:bash: /usr/bin/cmake: 没有那个文件或目录 因为直接使用cmake系统回到默认的/usr/bin中去寻找,但是src中安装的cmake是在/usr/local/bin中,所以 ...