一、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. Linux 文件管理篇(三 属性管理)

    可读        r 可写        w 可执行        x 档案属性: 第一栏:执行list -al后第一栏的十个标志[1 - 10] 1: d    目录 -    档案 l    连 ...

  2. 萌新带你开车上p站(一)

    本文作者:萌新 0x01前言 这一系列文章为pwnable.krToddlr’s Bottle的全部题解,其中有三道题目相对而言稍难或者说比较经典,单独成篇,其他题目的题解放在一起发出来. 0x02f ...

  3. Win10安装Keras+Tensorflow+Opencv

    Win10安装keras 安装 Anaconda 清华加速下载链接: https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/ 我选择的版本是: A ...

  4. AJ学IOS 之微博项目实战(6)导航控制器NavigationController 的滑动回退功能实现

    AJ分享,必须精品 一:效果 第二篇里面写了怎样自定义navigation实现自定义的导航控制器左右按钮样式,但是当我们自己实现后,系统自带的向右边滑动来实现回退的功能就不能用了. 这里主要实现滑动回 ...

  5. linux知识点系列之 umask

    介绍 umask(user's mask)用来设置文件权限掩码.权限掩码是由3个八进制的数字所组成,将现有的存取权限减掉权限掩码后,即可产生建立文件时预设的权限. UNIX最初实现时不包含umask命 ...

  6. First Training

    B B - Local Extrema CodeForces - 888A You are given an array a. Some element of this array ai is a l ...

  7. Python之疑难杂症包安装

    ansible 直接用pip install 安装一直失败 1.下载ansible压缩包 https://files.pythonhosted.org/packages/ec/ee/1494474b5 ...

  8. Scrapy学习-(1)

    Scrapy框架介绍 Scrapy是一个非常优秀的爬虫框架,基于python. 只需要在cmd运行pip install scrapy就可以自动安装.用scrapy-h检验是否成功安装 Scrapy部 ...

  9. NIO教程 ——检视阅读

    NIO教程 --检视阅读 参考 BIO,NIO,AIO 总结 Java NIO浅析 Java NIO 教程--极客,蓝本 Java NIO 系列教程 --并发编程网 BIO,NIO--知乎 NIO 入 ...

  10. jquary

    1   定义:    jquary是快速简介的Javascrīpt框架 2  分类 :          1)  .js类           源代码的未压缩的可以进行更改的jquary 2) min ...