对于下拉框定位和输入,这里主要遇到有两种类型的下拉选择。

其中一个类型是select-options格式,如图

这种方式的定位可以使用select from list by valueselect from list by listselect from list等格式进行选择定位,具体可以参考随机下拉框定位选择

而这里主要说的就是这种文本框类型的下拉选择,格式如图所示

此种文本框类型的下拉选择操作方法:

  1. 鼠标定位到设备此文本类型下拉框中
  2. 文本框中输入设备的首字母这里以0为例,
  3. 输入字母后会显示下拉选择框,此时可以用鼠标或键盘选择一个设备号信息,这里以选择第一个为例

说明

操作中第二步在手动测试中是可以省略的,这里为了自动化的方便特意加上的

通过上面的操作说明,我们可以使用键盘或鼠标来操作此用例,这里主要是用鼠标操作实例说明。

第一步:定位输入文本框

使用firepath来定位文本框,这里使用的是id定位方法,代码如下

 input text    device    ${EIR}

这里直接将1、2合并,定位并输入文本框中

第二步:鼠标左键点击下拉选项

这里使用的是mouse down来进行操作的

代码如下

Selenium2Library.mouse down    xpath = html/body/div[1]/div/div[2]/form/div[5]/div[1]/div/ul/li[1]

说明

mouse down主要是鼠标左键定位到locator上且不放,所以这里需要增加释放鼠标左键的操作

第三步:释放鼠标左键

释放鼠标左键主要是mouse up进行操作的,代码如下

Selenium2Library.mouse up    xpath = html/body/div[1]/div/div[2]/form/div[5]/div[1]/div/ul/li[1]

这样下来,针对文本类型的下拉选项使用鼠标操作就实现了,整理后的封装的关键字代码如下

床位关联的设备号
[Arguments] ${EIR}
clear element text device
input text device ${EIR}
sleep 10
Selenium2Library.mouse down xpath = html/body/div[1]/div/div[2]/form/div[5]/div[1]/div/ul/li[1]
Selenium2Library.mouse up xpath = html/body/div[1]/div/div[2]/form/div[5]/div[1]/div/ul/li[1]
sleep 3

如图

说明

${EIR}是本地定义的一个变量0

这样我们在用例修改的时候,可以直接使用该关键字进行操作了。

如图,展示了用例中文本类型的下拉框的定位和选择

而用例运行结果如图所示

这里主要使用的鼠标的mouse downmouse up操作来进行下拉选择定位的,而实际上还有其他鼠标的操作方法,如果感兴趣可以找项目实战操作,这里下次遇到再说吧,mouse关键字图示

前面说明,这里也可以使用键盘进行文本下拉框的定位和选择的,但是此项目中,使用键盘操作的时候,向下回车显示的结果是文本框中输入的历史记录,所以使用键盘是不适用的。

不过还是说明一下,robotframework中键盘的ascii,

https://github.com/SeleniumHQ/selenium/blob/master/java/client/src/org/openqa/selenium/Keys.java

而这里如果项目适用,可以参考博客:http://blog.csdn.net/u011757108/article/details/62428484

到这里,文本类型下拉选择框就完成了...

robotframework自动化系列:文本类型的下拉框的更多相关文章

  1. robotframework文本类型的下拉框

    对于下拉框定位和输入,这里主要遇到有两种类型的下拉选择. 其中一个类型是select-options格式,如图 这种方式的定位可以使用select from list by value或select ...

  2. Python+selenium之获取文本值和下拉框选择数据

    Python+selenium之获取文本值和下拉框选择数据 一.结合实例进行描述 1. 实例如下所示: #新增标签操作 def func_labels(self): self.driver.find_ ...

  3. 商品类型的下拉框绑定一个事件,通过ajax获取属性

    html代码这么写 <!-- 商品属性 --> <table cellspacing="1" cellpadding="3" width=&q ...

  4. html之多行文本textarea 及下拉框select(12)

    1.多行文本 多行文本使用textarea标签,默认值需要写在中间,和input标签不同,name属性用于后台获取数据(request.POST.get(meno)) <body> < ...

  5. EasyUI下拉框级联

    EasyUI用来实现后台界面还是可以的,毕竟面对的是小众群体而非广大的用户,简单为美.这里想聊的功能是一种下拉框的联动,比如我选中了下拉框A的某一项,那么下拉框B的选项就是甲乙丙丁,如果我选了A的另一 ...

  6. MVC controller序列化下拉框给view

    在开发中遇到的小问题,一个下拉框,一个文本域 ,文本域根据下拉框变化: 由于是一次全部取出的值,下拉框变化不想再去取值: 在后台把值先序列化给前台用 controller: List<Lesso ...

  7. robotframework自动化系列:随机下拉框

    robotframework自动化系列:随机下拉框 随着项目自动化不断推进,在下拉框定位的时候出现些问题,每次下拉框选择都是相同的下拉选项,如果想每次选择的选项不一样,该如何实现呢,查找了很多资料,没 ...

  8. robotframework自动化系列:删除操作流程以及总结

    之前已经完成了登录.新增和修改的操作流程,这一节主要说明删除操作流程以及自动化的过程中出现的问题,算是对这个项目自动化的一个总结. 删除操作流程 对于系统账号管理中删除功能,删除的测试点主要如图所示 ...

  9. python webdriver中对不同下拉框通过文本值的选择

    在自动化中python对下拉框的处理网上相对实例比较少,其它前辈写的教程中对下拉也仅仅是相对与教程来说的,比如下面: m=driver.find_element_by_id("Shippin ...

随机推荐

  1. Codeforces 486E LIS of Sequence(线段树+LIS)

    题目链接:Codeforces 486E LIS of Sequence 题目大意:给定一个数组.如今要确定每一个位置上的数属于哪一种类型. 解题思路:先求出每一个位置选的情况下的最长LIS,由于開始 ...

  2. POJ 2184 Cow Exhibition (01背包变形)(或者搜索)

    Cow Exhibition Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 10342   Accepted: 4048 D ...

  3. Django-配置celery

    首先需要安装的包 pip install cellerypip install django-cellery pip install django-cellery-results pip instal ...

  4. ribbon负载均衡进行服务消费

    相同服务以不同端口形式注册到eureka上,ribbon从eureka上获取冰进行服务消费,会偶现如下现象: I/O error on GET request for "http://COM ...

  5. openwrt: sysupgrade

    sysupgrade 用法: sysupgrade [...] sysupgrade [-q] [-i] 升级选项: -d 重启前等待 delay 秒 -f 从 .tar.gz (文件或链接) 中恢复 ...

  6. android编译遇到问题修改

    (注意要确定安装了jdk) 第一步: cd  lichee; ./build.sh  -p sun5i_elite -k 3.0  (apt-get install uboot-mkimage需要安装 ...

  7. thinkphp Class 'PDO' not found 错误

    thinkphp Class 'PDO' not found 错误,原因mysql5.7.26缺少pdo驱动,需要安装php的pdo和pdo_mysql扩展 本文以centOS为例 1.进入PHP源码 ...

  8. 文件宝局域网传输/播放功能使用帮助(Windows电脑用户)

    使用局域网账户密码登录,可以访问电脑上所有文件 使用游客无账户密码登录,只能访问电脑上指定共享文件夹的文件. 1.怎么设置共享文件夹请参考: 方法1 1.在文件资源管理器中选择自己一个想共享的文件夹, ...

  9. MySQL 数据库 的安装和基本管理

    03-MySql安装和基本管理   本节掌握内容: mysql的安装.启动 mysql破解密码 统一字符编码 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Orac ...

  10. 事件序列化器 Flume 的无数据丢失保证,Channel 和事务

    小结: 1.Flume 的持久性保证依赖于使用的持久性Channel 的保证 通过事件序列化器将Flume事件转化为外部存储格式 主要的事件序列化器: 1.文本 2.带有头信息的文本 3.Avro序列 ...