一、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. go 锁和sync包

    一.什么是锁? sync.Mutex 是一个互斥锁,它的作用是守护在临界区入口来确保同一时间只能有一个线程进入临界区 在 sync 包中还有一个 RWMutex 锁:他能通过 RLock() 来允许同 ...

  2. Python设计模式(9)-外观模式

    # /*外观模式:为外界调用提供一个统一的接口,把其他类中需要用到的方法提取# * 出来,由外观类进行调用.然后在调用段实例化外观类,以间接调用需要的# * 方法.这种方式和代理模式有异曲同工之妙.然 ...

  3. centos7安装puppet详细教程(简单易懂,小白也可以看懂的教程)

    简介: Puppet是一种linux.unix平台的集中配置管理系统,使用ruby语言,可配置文件.用户.cron任务.软件包.系统服务等.Puppet把这些系统实体称之为资源,它的设计目标是简化对这 ...

  4. python字符串列表元组序列操作

    Table of Contents generated with DocToc python系列-字符串.列表.元组的操作 序列的访问及运算符 序列通用操作 访问单个元素 切片访问一部分元素 序列的复 ...

  5. slice使用了解

    切片 什么是slice slice的创建使用 slice使用的一点规范 slice和数组的区别 slice的append是如何发生的 复制Slice和Map注意事项 什么是slice Go中的切片,是 ...

  6. Activity A 跳转到Activity B 生命周期

    又被生命周期折磨了一段时间,这次是被onPause 和 onStop 折磨了,一直认为Activity A 跳转到到 Activity B的生命周期是onPause(A),onStop(A),onCr ...

  7. 如何用python爬虫从爬取一章小说到爬取全站小说

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取http ...

  8. Docker安装Redis并介绍漂亮的可视化客户端进行操作

    1 简介 Redis是使用ANSI C语言开发的基于Key-Value的高性能NoSQL数据库,在解决高并发.高可用等一系列问题中,它扮演着重要的角色.它的优势主要有: 速度快. 持久化. 原子性. ...

  9. Linux命令:chown

    说明: 将指定文件的拥有者改为指定的用户或组. 语法: chown [-cfhvR] [--help] [--version] user[:group] file... 参数: user : 新的文件 ...

  10. Python 类学习的一些Tips

    这里不详细介绍类,只总结一些小萌新在学习python 类时会有的一些疑点. 类的私有性 在python中,属性和方法的访问权限只有两种,公开的,和私有的.在给属性命名时用两个“__”下划线作为开头,就 ...