Robot Framework--07 变量的声明、赋值及其使用
转自:http://blog.csdn.net/tulituqi/article/details/7984642
一、变量的声明
1、变量标识符
每个变量都可以用 变量标识符{变量名} 来进行表示,变量标识符在之前用户关键字的地方介绍了一下,Scalar变量用 $ 作为标识符,List型变量用 @ 作为标识符,不过这只能作为一个初步的区分,因为同样在之前的文章里,大家应该也看到了,使用$ 的变量,实际上也可以在接收List值后转化成List变量。转化的内容会在List变量里介绍。
2、变量声明
其实这里没有什么特别的变量声明,因为RF底层是Python,所以他的语法也有些类似,变量不需要特定声明,只要有初始化赋值即可使用。
如果硬要说有声明,那可以把我们在TestSuite下面手动添加的变量理解为声明吧。比如我们可以在TestSuite上点右键或者在Edit区点Add Scalar或Add List来新增变量。
实际上也可以看做另一种形式的变量赋值,一般相当于使用Set Variable进行初始化赋值。
3、变量赋值
赋值也是有几种的,根据自己的需求进行处理吧。
1)Set 赋值
通常这种方式主要使用Set Variable或类似的使用了Set的关键字对变量进行赋值。例如:
2)Get 赋值
主要用于返回值上,包括系统关键字的返回值和用户关键字的返回值(从广义上说,Set那个也是返回值),例如:
之前的用户关键字里也有很多例子。
3)运行时赋值
详见流程与数据分离最后一篇,使用小v 的argument。
特别注意:如果一个变量没有经过赋值,使用时会报错的。
4、变量的作用域
通常情况下,每个变量默认都是局部变量。
一个case里的变量,作用域在这个case内部;
一个userkeyword里的变量,作用域在这个userkeyword内部;
一个文件型suite里的变量,作用域在这个suite内部,所有下面的case也都可以使用。
一个目录型suite里的变量,作用域在这个目录内,他下面的文件型suite是无法使用的,所以一般在目录下新增变量没有太大意义。
作用域是可以修改的,即通过一些系统关键字,对变量进行作用域的设定,常用的关键字有:
Set Global Variable ——设定全局级变量
Set Suite Variable ——设定suite级变量
Set Test Variable ——设定case级变量
二、变量的使用
其实使用变量我觉得不需要说太多了,变量的赋值可以看一下用户关键字的返回值部分,里面的单个返回值和多个返回值其实就是给单个变量赋值和多个变量赋值的例子了。
这里再列几种之前没有写过的例子吧。
1、在判断中使用
例如这样写,在第二行的判断中可以直接写判断条件,现在的条件成立,于是运行结果如下:
2、字符串使用
如果想把变量作为一个字符串的一部分,可以直接这样写
运行结果如下:
实际上默认情况下RF里的变量都是字符型的,并且两个字符串连接不要加什么符号,直接连起来就行了。
如果你写成aaa+${text}bbb,最终结果就是aaa+123bbb,他会把你写的任何内容都当作字符串的。
3、参与运算
看了上面的例子之后,可能有人说我想用123作为数值进行计算该怎么用。
这里要用到一个关键字Evaluate。先看个例子:
运行结果如下:
他的作用是可以让你加载Python的一些库,依赖于Python的语法,相当于直接运行对应的Python语句得到结果。
像上面的例子没有加载库,因为加减乘除这些是Python基本库就有的。下面放一个加载Python库的,如下图,他加载了random和sys两个库,并使用相应的语句生成一个随机数。
运行结果:
具体可以参考一下RF的userguide文档中BuiltIn部分。
Robot Framework--07 变量的声明、赋值及其使用的更多相关文章
- Robot Framework:变量与运算
设置变量 ...
- robot framework —— 变量文件
何为变量文件? 变量文件中包含了测试数据中的变量.虽然变量可以通过变量表格中创建, 或者通过命令行设置, 不过这些方法有所局限, 而变量文件可以动态地创建任意类型的变量. 变量文件一般由Python模 ...
- robot framework学习笔记之二———变量
Robot Framework的变量分为标量, 列表和字典, 分别使用语法格式 ${SCALAR}, @{LIST} 和 &{DICT} 来定义. 此外, 环境变量可以直接使用语法 %{ENV ...
- Robot Framework(八) 资源和变量文件
2.7资源和变量文件 测试用例文件和测试套件初始化文件中的用户关键字和变量只能在创建它们的文件中使用,但资源文件提供了共享它们的机制.由于资源文件结构非常接近测试用例文件,因此很容易创建它们. 变量文 ...
- Robot Framework - 5 - 创建测试数据
Creating test data User Guide - Creating test data:http://robotframework.org/robotframework/latest/R ...
- robot framework 笔记(一)
背景: 平时使用rf时会用到一些方法,长时间不用就会忘记,本文用来记录当做自己的小笔记 内容持续更新中········ 一.robot framework 大小写转换 1.转换小写: ${low} E ...
- Robot Framework(12)- 详细解读 RF 的变量和常量
如果你还想从头学起Robot Framework,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1770899.html 常量的栗子 常量 ...
- Robot Framework(六)变量
变量 2.5.1简介 变量是Robot Framework的一个不可或缺的特性,它们可以在测试数据的大多数地方使用.最常见的是,它们用于测试用例表和关键字表中关键字的参数,但所有设置都允许在其值中使用 ...
- Robot Framework(9)- 使用变量文件
如果你还想从头学起Robot Framework,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1770899.html 啥是变量文件 变 ...
随机推荐
- Struts2总结
1.构建Struts2的开发环境? 1.1:导入相应jar包(最简化的,后期可以直接复制). 1.2:编写struts.xml配置文件.(从实例中提供参考). <package name=&qu ...
- 【BZOJ 1007】【HNOI 2008】水平可见直线 解析几何
之前机房没网就做的这道题,用的解析几何判断交点横坐标 #include<cmath> #include<cstdio> #include<cstring> #inc ...
- Jquery每行最后一个LI边距设为0
下面用的是jquery方法,请加载jquery插件 <script type="text/javascript"> $(function(){ $('#newhouse ...
- js-设置焦点
function CheckForm() { if(document.form1.trainingName.value==""){ alert("培训班名称不能为空!&q ...
- 怎么给我的Office文档加密
很多的用户朋友都可以熟练的使用office中的Word.Excel和PowerPoint文档,但大家对Office文档加密方式了解的并不多.Advanced Office Password Recov ...
- Office密码破解工具最好用的是哪款
很多的用户朋友设置密码的office文档一般都含有比较重要的信息.因此,忘记密码在破解的过程中非常重视安全保密性.现在有很多款office密码破解工具,很多的用户朋友不知道用哪一款比较好,其中Adva ...
- WebApi支持命名空间重名问题
using System;using System.Collections.Concurrent;using System.Collections.Generic;using System.Linq; ...
- 74.Android之四种启动模式
转载:http://www.cnblogs.com/meizixiong/archive/2013/07/03/3170591.html 一.启动模式介绍 启动模式简单地说就是Activity启动时的 ...
- Leetcode 437. Path Sum III
You are given a binary tree in which each node contains an integer value. Find the number of paths t ...
- Java反射机制的作用
假如我们有两个程序员,一个程序员在写程序的时候,需要使用第二个程序员所写的类,但第二个程序员并没完成他所写的类.那么第一个程序员的代码能否通过编译呢?这是不能通过编译的.利用Java反射的机制,就可以 ...