一、scalar 变量

  • ${} 定义 scalar 变量
  • ${} 还用来取值

1.set variable  设置变量

${name}    Set Variable    zhangsan
log    ${name} #结果如下
20200311 12:43:49.445 : INFO : ${name} = zhangsan
20200311 12:43:49.445 : INFO : zhangsan #打印出结果 zhangsan

2.变量取值

  • ${var[index]}  索引取值
${name}    Set Variable    zhangsan
log    ${name[4]} #结果如下
20200311 12:47:21.584 : INFO : ${name} = zhangsan
20200311 12:47:21.584 : INFO : g #取出结果 "g"
  • ${var[start_index:end_index:step]}  切片取值
${name}    Set Variable    zhangsan
log    ${name[:5]}
log    ${name[:5:2]} #结果如下
20200311 12:51:35.801 : INFO : ${name} = zhangsan
20200311 12:51:35.801 : INFO : zhang #第一次切片取出结果 zhang
20200311 12:51:35.801 : INFO : zag #第二次切片取出结果 zag
  • Catenate  字符串拼接
${name1}    Catenate    zhang    san
log     ${name1}
${name2} Catenate SEPARATOR= li si
log     ${name2}
${name3} Catenate SEPARATOR=- wang wu
log    ${name3} #结果如下
20200311 12:55:50.386 : INFO : ${name1} = zhang san
20200311 12:55:50.387 : INFO : zhang san #第一个拼接结果(姓和名直接存在一个空格)
20200311 12:55:50.388 : INFO : ${name2} = lisi
20200311 12:55:50.388 : INFO : lisi #第二个拼接结果(姓和名直接存没有空格)
20200311 12:55:50.389 : INFO : ${name3} = wang-wu
20200311 12:55:50.389 : INFO : wang-wu #第三个拼接结果(姓和名直接存在一个 "-")

二、list 变量

  • @{} 定义 list 变量
  • ${} 还用来取值

1.Create List 创建列表

@{list1}    Create List    name    age    sex
log    ${list1} #这里使用了 log 进行打印操作 #结果如下20200311 13:02:16.510 : INFO : ['name', 'age', 'sex'] #得到的是一个列表
@{list1}    Create List    name    age    sex
Log Many  ${list1} #这里使用了 Log Many 进行打印操作 #结果如下20200311 13:05:56.259 : INFO : ['name', 'age', 'sex'] #得到的也是一个列表

2.Set Variable  创建列表

@{list1}    Set Variable    name    age    sex
Log Many ${list1} #结果如下20200311 13:08:05.653 : INFO : ['name', 'age', 'sex']

3.Append To List  列表中添加值

  • 前提:需要在工程中加载 Collections 库
@{list1}    Create List    zhangsan    lisi
Log Many ${list1}
Append To List ${list1} wangwu #往 @{list1} 中追加 wangwu
Log Many ${list1} #结果如下
20200311 13:20:54.885 : INFO : ['zhangsan', 'lisi'] #追加前结果
20200311 13:20:54.886 : INFO : ['zhangsan', 'lisi', 'wangwu'] #追加后结果

4.Insert Into List  列表中添加值(通过索引添加到指定位置)

@{list1}    Create List    zhangsan    lisi
Log Many ${list1}
Insert Into List ${list1} 1 wangwu #往列表 ${list1} 中索引为 1 的位置插入 wangwu
Log Many ${list1} #结果如下
20200311 13:24:48.873 : INFO : ['zhangsan', 'lisi']
20200311 13:24:48.874 : INFO : ['zhangsan', 'wangwu', 'lisi']

5.列表取值(索引取值)

@{list1}    Create List    zhangsan    lisi    wangwu
Log Many ${list1[1]} #结果如下
20200311 13:26:46.683 : INFO : lisi

6.列表中取值(切片取值)

@{list1}    Create List    zhangsan    lisi    wangwu
Log Many ${list1[0:2]} #结果如下
20200311 13:28:23.848 : INFO : ['zhangsan', 'lisi']

三、dict 字典

  • &{} 定义 dict 变量
  • ${} 还用来取值

1.Create Dictionary  创建字典

  • 通过 key = value 的形式
&{stu}    Create Dictionary    name=zhangsan    age=20
Log Many ${stu} #结果如下
20200311 13:32:00.520 : INFO : {'name': 'zhangsan', 'age': ''}
  • 通过 key 和 value 分开写的形式
&{stu}    Create Dictionary    name    zhangsan    age    18
Log Many ${stu} #结果如下
20200311 13:33:49.727 : INFO : {'name': 'zhangsan', 'age': ''}

2.字典取值:${dict}[key]

&{stu}    Create Dictionary    name=zhangsan    age=18
Log Many ${stu}[name] #结果如下
20200311 13:36:18.868 : INFO : zhangsan #得到 name 的值

四、全局变量

1.在项目 project 或者工程 suite 右击鼠标如下选择创建

2.变量

3.列表变量

4.字典变量

5.调用全局变量

log    ${name}
Log Many ${list1}
Log Many ${dict1} #结果如下
20200311 13:49:31.669 : INFO : zhangsan
20200311 13:49:31.670 : INFO : ['zhangsan', 'lisi', 'wangwu']
20200311 13:49:31.670 : INFO : {'name': 'zhangsan', 'age': '', 'sex': 'boy'}

RF(scalar/list/dict变量)的更多相关文章

  1. 2.RF中scalar,list和dict变量的定义和取值

    $:定义scalar变量:@定义list变量:&定义dict变量: $还用来取值,包含scalar, list和dict变量,如下example所示 1.定义scalar变量:set vari ...

  2. RF之关键字、变量、循环

    关键字的使用: RF的能力是由关键字提供的,所以,我们必须对RF的常用关键字有个了解 . 最常用的关键字就在RF的关键字中.http://robotframework.org 其中Builtin是标准 ...

  3. 【python】为什么修改全局的dict变量不用global关键字

    转自:http://my.oschina.net/leejun2005/blog/145911?fromerr=qnPCgI19#OSC_h4_8 为什么修改字典d的值不用global关键字先声明呢? ...

  4. RF内建的变量

    ${CURDIR} 提供当前测试文件存放的绝对路径.该变量是大小写敏感的.${TEMPDIR} 获取操作系统临时文件夹的绝对路径. 在UNIX系统是在/tmp, 在windows系统是在c:\Docu ...

  5. 八、RF的内置变量

    1.表示“空”的变量 ${EMPTY} 空 适用输入空的案例 2.表示“空格”的变量 ${SPACE} 空格,如果是需要5个空格可以这样写${SPACE*5} 3.目录的绝对路径 ${CURDIR} ...

  6. Robot Framework(12)- 详细解读 RF 的变量和常量

    如果你还想从头学起Robot Framework,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1770899.html 常量的栗子 常量 ...

  7. RF之变量的共享使用与python测试库-5

    RF申明变量: 首先我们要创建Variables表 *** Settings *** ${LoginUrl}      http://cloud.innovpowerf.com/Account/Log ...

  8. Robot Framework(13)- RF 循环的详细使用

    如果你还想从头学起Robot Framework,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1770899.html 前言 RF用   ...

  9. Python中model转dict

    问题 在query出来的行信息object中有一个dict变量,这个变量存储了字典信息 for u in session.query(User).all(): print u.__dict__ 但是这 ...

随机推荐

  1. Tcl编程第四天,流程控制语句

    1. if {} { } elseif {} { } else { } 注意: 1.关键字 if elseif else 和大括号之间应该留有间距的.如果紧紧挨着会报错. 2.表条件的判断括号为大括号 ...

  2. mysql全文索引浅谈

    原文链接:http://www.cnblogs.com/robertsun/p/5999588.html 对于一些简单的检索可以通过mysql自带的全文索引及 MATCH AGAINST 查询语句实现 ...

  3. Python库-Matplotlib

    Matplotlib官网https://matplotlib.org,Matplotlib是一个Python的2D绘图库. 可视化是整个数据分析的关键辅助工具,可以清晰的理解数据. 折线图(用于显示数 ...

  4. python3(三十三)debug

    """ 调试 """ __author__on__ = 'shaozhiqi 2019/9/23' # 调试程序 # . print打印,没 ...

  5. 几行代码实现cookie的盗取

    前言 上一篇文章中介绍了XSS(跨站脚本攻击)简单原理与几种类型.接下来通过实例用几行代码实现cookie的盗取. 正文 这里测试用的工具是DVWA(可以本地搭建,前面文章有介绍),和phpstudy ...

  6. 很用心的为你写了 9 道 MySQL 面试题

    MySQL 一直是本人很薄弱的部分,后面会多输出 MySQL 的文章贡献给大家,毕竟 MySQL 涉及到数据存储.锁.磁盘寻道.分页等操作系统概念,而且互联网对 MySQL 的注重程度是不言而喻的,后 ...

  7. [转] Roguelike开发建议

    该文所述的Roguelike为典型的Roguelike游戏,而非带着Roguelike元素的游戏. 以下内容为他在今年Roguelike开发者大会上的发言文字版. 引言 几年前召开的首届Rogueli ...

  8. AJ学IOS 之CoreLocation地理编码小Demo输入城市得到经纬度

    AJ分享,必须精品 一:效果 输入地名,可以得到相应的经纬度,知识为了学习写的小Demo 二:实现步骤 一 :首先获取用户输入的位置. 二 :创建地理编码对象. 三 :利用地理编码对象编码,根据传入的 ...

  9. AJ学IOS(20)UI之UIPickerView_点菜系统

    AJ分享,必须精品 先看效果图 ## UIPickerView控件 UIPickerView用处: 用来展示很多行(row) 很多列(component )的数据,多用于电子商务的点菜,城市选择等等. ...

  10. sqli-labs通关教程----41~50关

    第四十关 与前几关一样,闭合变成') 插入数据 ?id=1') ;insert into users(id,username,password) values('17','aaa','bbb'); % ...