五、RF中UI自动化操作基础
列表分类

1.打开浏览器
|
Open Browser url browser [ url | browser=firefox | alias=None | remote_url=False | desired_capabilities=None | ff_profile_dir=None ] |
2.窗口最大化
|
Maximize Browser Window |
2.1封装运行速度关键字
|
sleep ${secends} Set Selenium Speed ${secends}
|
3.点击
|
#等待该元素出现 Wait Until Element Is Visible ${locator} #点击该元素 Click Element ${locator} #将点击封装成关键字
|
4.定位方式:
4.1xpath定位
定位返回按钮

a、绝对路径:xpath=/html/body/div[1]/div/div[3]/a
b、相对路径:xpath=//*[@id='login-box']/div[3]/a
c、布尔值写法:Xpath = //input[@id=’kw1’ and @name=’wd’]
|
点击 xpath=//*[@id='login-box']/div[3]/a
|
4.2 id and name
|
id=xxx name=xxx |
4.3 css定位
5.关闭浏览器并杀掉进程
|
点击 xpath=/html/body/div[1]/ul[2]/li[2]/span/a
其中 Csj_Kill_Chrome_Driver为自定义的第三方包(第三方包放在python/lib/site-packages/)
os.system("系统命令"):执行系统命令 1.查看指定端口的占用情况:netstat -aon|findstr "8080" 可查看进程pid 2 .直接强制杀死指定端口:taskkill /pid 4136 -t -f(taskkill 是命令行命令 /f是强制终止 /im image name的缩写 /t 结束进程树) 3.查看pid对应的进程:tasklist|findstr "端口号" 然后 taskkill /f /t /im 进程名 |
6.取url
|
${test} get location
|
7.封装清空关键字
|
清空
|
8.获取value的值
|
${t1} get text xpath=/html/body/div[1]/form/div[1]/select
|
8.1封装get text
|
9.select控件操作
|
select from list: Arguments:[ locator | *items ]--两个参数,一个是select元素的定位路径,一个是*items; 1.*items是非必填参数,当*items不填时,这个关键字会选择下拉列表最后一个值; 2.需要选择值Select From List只支持value或者lable取值,不支持index,优先级为先按value选值,然后再按lable选值 |
| select from list by index:
Arguments:[ locator | *indexes ]
两个参数:一个是select元素的定位路径,一个是下拉选项的下标,从0开始,0表示选择第一个值
|
| select from list by value:
Arguments:[ locator | *values]
两个参数:一个是select元素的定位路径,一个是下拉选项的标签value值
|
|
select from list by lable: Arguments:[ locator | *lables]
两个参数:一个是select元素的定位路径,一个是下拉选项的text值,注意是text值,不是标签的value值
|
9.1 封装下拉框操作函数
|
10 赋值比较
|
${text} set variable if ${t1}==666 True False 如果相等返回true,否则返回false |
11.Run Keyword If ${a}==${b} log ${提示信息}
... ELIF ${c}==${d} run element click element xpath=xxx
... ELSE log 操作错误

12.运行关键字 Run Keyword
run keyword 后可直接运行系统关键字和用户关键字


13.运行关键字并返回状态:如果这个元素可见则返回true,否则返回false
|
${a} run keyword and return status element should be visible xpath=/html/body/div[1]/form/div[3]/select[2]
|
14.上传文件
|
choose file Arguments:[ locator | file_path ] 定位,本地路径 |
15.选择切换iframe
|
select frame Arguments:[llocator]
|
16.获取属性的值
|
${text} get element attribute xpath=xxx@属性名
|
17.页面应该包含
|
page should contain ${text}
|
五、RF中UI自动化操作基础的更多相关文章
- .NET中的IO操作基础介绍
关于IO简介 .NET中的IO操作,经常需要调用一下几个类. clipboard[] .FileStream类 文件流类,负责大文件的拷贝,读写. .Path类 Path类中方法,基本都是对字符串(文 ...
- Selenium系列(十五) - Web UI 自动化基础实战(2)
如果你还想从头学起Selenium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1680176.html 其次,如果你不懂前端基础知识, ...
- Robot Framework:RF中对时间操作的datetime库常用关键字
[转自:http://blog.csdn.net/r455678/article/details/52993765] 1.对固定日期进行操作,增加或减去单位时间或者时间段 2.对两个时间段进行操作 3 ...
- 【转】 robotframework(rf)中对时间操作的datetime库常用关键字
转自http://blog.csdn.net/r455678/article/details/52993765 DateTime库是robotframework内置的库 1.对固定日期进行操作,增加或 ...
- robotframework(rf)中对时间操作的datetime库常用关键字
1.对固定日期进行操作,增加或减去单位时间或者时间段 2.对两个时间段进行操作 3.对时间格式转化,获取时间戳. 4.从完整时间中取指定年月日等 5.对时间类型进行格式化 6.获取当前时间或者指定时区 ...
- 使用Hive或Impala执行SQL语句,对存储在Elasticsearch中的数据操作(二)
CSSDesk body { background-color: #2574b0; } /*! zybuluo */ article,aside,details,figcaption,figure,f ...
- 使用Hive或Impala执行SQL语句,对存储在Elasticsearch中的数据操作
http://www.cnblogs.com/wgp13x/p/4934521.html 内容一样,样式好的版本. 使用Hive或Impala执行SQL语句,对存储在Elasticsearch中的数据 ...
- AutoIt 软件自动化操作
AutoIt 目前最新是v3版本,这是一个使用类似BASIC脚本语言的免费软件,它设计用于Windows GUI(图形用户界面)中进行自动化操作. 它利用模拟键盘按键,鼠标移动和窗口/控件的组合来实现 ...
- {Django基础八之cookie和session}一 会话跟踪 二 cookie 三 django中操作cookie 四 session 五 django中操作session
Django基础八之cookie和session 本节目录 一 会话跟踪 二 cookie 三 django中操作cookie 四 session 五 django中操作session 六 xxx 七 ...
随机推荐
- 优雅的swiper实例
swiper实例 <!DOCTYPE html> <html lang="en"> <head> <meta name="vie ...
- SQLite 参数化查询
SQLite参数化查询 首先给出两个参考博客: Sqlite DB sqlite3使用简介 贴出一段自己用的代码: #include <stdio.h> #include <stdl ...
- 最简单的Android项目(添加jar文件)
如果项目需要引用第三方jar文件,需要对编译命令做一些改动. 首先在项目根目录创建libs目录,将需要的jar文件拷贝到里面. 编译过程中有两步需要改动. 编译java源文件时,需要添加class p ...
- creat-react-app生成的项目默认端口号是3000,如何更改?
从项目的 package.json 文件中可以看到,npm start即scripts start.js,因此我们找到scripts/start.js ,部分代码如下: 找到 DEFAULT_PORT ...
- VxWorks引导启动过程
https://blog.csdn.net/phunxm/article/details/6979089
- WebSoket的简单用法
第一步,在客户端配置 <script> var websocket; if ('WebSocket' in window) { websocket = new WebSocket('ws: ...
- javaScript事件--事件流
一.事件 事件是文档或者浏览器窗口中发生的,特定的交互瞬间. 事件是用户或浏览器自身执行的某种动作,如click,load和mouseover都是事件的名字. 事件是javaScript和DOM之间交 ...
- JAVA笔记26-网络编程(不等于网站编程)
一.网络基础(TCP/IP详解) 1.IP协议(Internet Protocol):网络层,支持网间数据报通信.无连接数据报传送,数据报路由选择和差错控制. IPv4 32位(4字节),IPv6 1 ...
- 【NOIP2017提高组模拟12.10】幻魔皇
题目 幻魔皇拉比艾尔很喜欢斐波那契树,他想找到神奇的节点对. 所谓斐波那契树,根是一个白色节点,每个白色节点都有一个黑色节点儿子,而每个黑色节点则有一个白色和一个黑色节点儿子.神奇的节点对则是指白色节 ...
- 【NOIP2016提高A组模拟9.9】爬山
题目 国家一级爬山运动员h10今天获得了一张有着密密麻麻标记的地图,在好奇心的驱使下,他又踏上了去爬山的路. 对于爬山,h10有一个原则,那就是不走回头路,于是他把地图上的所有边都标记成了有向边.他决 ...














