robotframework - 基础关键词
robotframework基础关键词如下:
1、可在python、notepad++ 编辑:
*** Settings ***
Library Screenshot
Library Collections
*** Variables ***
${hi} 欢迎你第一次使用 Robot Framework。它的强大性和易用性相信会让你的测试工作变得更加简单可靠
@{company} 小米 oppo vivo 一加 360
&{dict_demo} xiaoli = 1999 huawei = 2999 oppo = 3999
*** Test Cases ***
variable
#Set variable 设置变量值关键字
${a} Set variable Hello World
log ${a}
list
#创建列表
${abc} Create list Bob Alice Keep
log ${abc}
log many ${abc[0]} #打印出索引上的值
log many @{company}[0]
catenate
${hi} Catenate Hello World
log ${hi}
if
#if语法 方法一
${a} Set variable 91
run keyword if ${a}>=90 log 优秀
... ELSE IF ${a}>=70 log 良好
... ELSE IF ${a}>=60 log 及格
... ELSE log 不及格
#方法二
${b} Set variable 59
run keyword if ${b}>=90 log 优秀
... ELSE IF ${b}>=70 log 良好
... ELSE IF ${b}>=60 log 及格
... ELSE log 不及格
for
#for循环
#打印出0-9数字
: FOR ${a} IN RANGE 10
\ log ${a}
log +++++++++++++
#打印出1-9数字
: FOR ${b} IN RANGE 1 10
\ LOG ${b}
log --------
#1-10 间隔1打印
: FOR ${c} IN RANGE 1 10 1
\ Log ${c}
log ++++++++++
#循环打印出list
@{List} Create List BOB OPPO Xiaomi Tz
: FOR ${abc} IN @{List}
\ log ${abc}
log ---------
#嵌套If
@{List} Create List BOB OPPO Xiaomi Tz
: FOR ${abc} IN @{List}
\ Run Keyword If '${abc}'=='BOB' Exit For Loop #类似于Break中断
Evaluate
#RF中一切数字类型皆为字符串
#Evaluat随机打印
${a} Evaluate random.randint(1000,9999) random
log ${a}
#导入第三方模块
Comment Import Library D:/Project/TestCase/robotframework/test_add.py
Comment ${bb} Set Variable 5
Comment ${cc} Set Variable 5
Comment ${add} add ${bb} ${cc}
Comment log ${add}
#借助evaluat函数转换
Import Library D:/Project/TestCase/robotframework/test_add.py
${bb} Evaluate int(5)
${cc} Evaluate int(6)
${add} add ${bb} ${cc}
log ${add}
#函数二
Comment Import Library D:/Project/TestCase/robotframework/count.py
Comment ${add} count.add 3 5
Comment log ${add}
Comment ${sub} count.sub 3 5
Comment log ${sub}
time
${t} Evaluate time.ctime() time
log ${t}
time1
#获取时间
${t} get time
log ${t}
#设置等待时间
sleep 5
for_list
@{i} create list a b c
: FOR ${abc} IN @{i}
\ log ${abc}
for_exit
@{i} create list a b c
: FOR ${abc} IN @{i}
\ Exit For Loop If "${abc}"=="c"
log ${abc}
dict
#创建字典
${dict} Create Dictionary xiaomi 999 vivo 1299
log many ${dict}
#打印出字典的键值
${item} Get Dictionary Items ${dict}
log ${item}
#打印出字典的键
${key} Get Dictionary Keys ${dict}
log ${key}
#打印出字典的值
${value} Get Dictionary Values ${dict}
log ${value}
${v} Get From Dictionary ${dict} vivo
log ${v}
log ${hi}
#打印出变量字典
log many &{dict_demo}
${aaaa}
test case4
[Tags] 重要
log @{company}${hi}
: FOR ${n} IN @{company}
\ log ${n}
Take_Screenshot
log 开始截图
Take Screenshot
log 结束截图
2、可在ride.py 中编辑 --->先添加project --测试 suite -- 测试 case

3、可用bat打开ride.py. --- 》任意取名,如我的是RIDE.bat -->在里面输入 ride.py

4、运行RIDE批处理文件

robotframework - 基础关键词的更多相关文章
- 如何在robotframework基础上使用数据驱动测试
一.写在前面 robotframework是很好用的关键字驱动测试框架,但是在实际工作中也有些地方使用不便,比如在我们设计参数校验测试case时,往往只是想修改校验参数类型而不得不做大量复制粘贴操作, ...
- RobotFramework - 基础入门
Robot Framework Wiki HomePage Robot Framework User Guide Robot Framework documentation Robot Framewo ...
- java基础-关键词super与this
转发:itbooks this是调用自己本身的构造函数,而super是调用父类中的构造函数. 这两个关键词是用在构造函数中的,这两个关键词的设计也是对封装特性的一种考虑,避免编写不必要的重复代码. c ...
- [C++基础]关键词volatile
volatile概念 volatile 是易变的.不稳定的意思. volatile关键字和const 一样是一种类型修饰符,用它修饰的变量表示可以被某些编译器未知的因素更改,比如操作系统.硬件或者其它 ...
- python基础关键词触发的魔法方法
with: __enter__ __exit__ dic={} 获取容器中指定元素的行为 dic["name"] = "egon" #设置值 __setitem ...
- 从零学习基于Python的RobotFramework自动化
从零学习基于Python的RobotFramework自动化 一. Python基础 1) 版本差异 版本 编码 语法 其他 2.X ASCII try: raise Type ...
- [转]什么鬼,又不知道怎么命名class了
(本文作者Mrcxt,原文链接:http://blog.csdn.net/mrcxt/article/details/52038884) 相信写css的人都会遇到下面的问题: 糟糕,怎么命名这个cla ...
- class如何命名更规范
相信写css的人都会遇到下面的问题: 糟糕,怎么命名这个class,好像不太贴切,要是冲突了怎么办,要不要设计成通用一点... 而改别人css代码的时候则会一直有个疑问:这个class到底是只在这个地 ...
- java面试题:多线程与并发
多线程 关键词:线程池 Q:如何新建一个线程? 继承Thread,或者实现Runnable接口,或者通过Callable接口实现. Q:Callable怎么用? Callable可以作为FutureT ...
随机推荐
- manacher模板整理
//p[]为最长回文半径长度,id为当前最靠右端回文串的中心点(多个取最靠左),mx为id对应的回文串的最右端坐标+1void manacher(char *s,int len){ p[] = ; , ...
- HDU-3790最短路径问题,第十遍终于过了~
最短路径问题 Time Limit: 2000/1000 MS (J ...
- 使用mysql-proxy 快速实现mysql 集群 读写分离
目前较为常见的mysql读写分离分为两种: 1. 基于程序代码内部实现:在代码中对select操作分发到从库:其它操作由主库执行:这类方法也是目前生产环境应用最广泛,知名的如DISCUZ X2.优点是 ...
- [HDU1576] A/B(扩展欧几里得)
传送门 n = A % 9973 -> n = A - A / 9973 * 9973 设 x = A / B(题目所述,B|A) -> A = B * x 所以 B * x - A / ...
- android 上AES解密是报错javax.crypto.BadPaddingException: pad block corrupted
网上看到两种方法: 1.SecretKeySpec skeySpec = new SecretKeySpec(getRawKey(key), "AES"); private sta ...
- linux shell 获得当前程序的路径
filepath=$(cd "$(dirname "$0")"; pwd) 脚本文件的绝对路径存在了环境变量filepath中,可以用 echo $filepa ...
- 无权二分图最大匹配 HDU2063 匈牙利算法 || Hopcroft-Karp
参考两篇比较好的博客 http://www.renfei.org/blog/bipartite-matching.html http://blog.csdn.net/thundermrbird/art ...
- yum install tree 出错primary.sqlite.bz2: [Errno -1] Metadata file does not match checks 解决办法
Loaded plugins: fastestmirrorLoading mirror speeds from cached hostfilehttp://ftp.sjtu.edu.cn/centos ...
- 函数绑定 bind
函数拓展-bind bind实现的是:对函数绑定作用域 更改作用域的方法:call,apply,with,eval,bind call 和 apply 的比较 相同点:1.都是在使用时候(使用即执行) ...
- vue之父子组件之间的通信方式
(一)props与$emit <!-这部分是一个关于父子组件之间参数传递的例子--> <!--父组件传递参数到子组件是props,子组件传递参数到父组件是用事件触发$emit--&g ...