robotframework(一)

robotframework 变量

1.变量标识符

每个变量都可以用使用变量标识符{变量名}来进行表示,变量主要有两类一类是Scalar,另一类是List.Scaler类型则用“$”作为标识符,List型主要用“@”作为标识符(如:${var},@{lavr})

2.变量声明

1.手动添加变量声明
在Testsuite上单击鼠标右键,或者在edite区域单击“Add Scalar”或者“Add List”按钮来新增变量。
2.最常用的是无论是Scalar还是List变量,都可以用Set Variable来赋值。

3.变量的作用域

通常情况下,每个变量默认情况都是局部变量。如果想改变这些变量的作用域,通常可以使用一下关键字进行变更:

1、Set Global Variable:设置为全局变量。当设置以后这个变量在所有的测试案例和测试套件均可使用

2、Set Suite Variable:设置File Suite级变量,这个变量只要在当前的File Suite 内部都有效,包括下面的案例

3、Set Test Variable 为设定Case级变量,这个变量在当前Tes Case内有效

robotframework 常量

常量一般有环境变量、数值常量、特殊字符、系统保留变量。

1、环境变量的标识符:%”如果在计算机的环境变量中设置了ANT_HOME这个系统变量,那么在RF中需要打印出来的话如下:

log %{ANT_HOME}

输出结果:
connect

2、其余都是:”$”

3、特殊字符常量系统保留常量。
一般要找这两类常量的话,只要一个办法就是Content Assistance助手,一般有2个快捷键可以呼出,Ctrl+空格。或者Ctrl+Alt+空格
特殊字符常量一般有:${/} ${:} ${EMPTY} ${False} ${None} ${null} ${SPACE} ${True}

robotframework Scalar变量

1.变量赋值

(1) Set 赋值

一般来说都是使用Set Variable关键字对变量进行赋值(也可以使用其他如:Set Variable If)

${val2} Set Variable abcd
${valif2} Set Variable If ‘${val2}’==’abcd’ efgh ace

注:${val2}赋值为:abcd
,${valif2}判断${val2}得值如果等于abcd,那么${valif2}=efgh,否则就等于ace

(2) Get 赋值
一般来说主要用于返回值上,包括系统关键字的返回值和用户关键字的返回值(Set也属于返回值)

${getVal1} Get Lenght ${val2}
${getVal2} Get Time

注:获取${val2}的长度赋值给${getVal1},获取当前时间赋值给${getVal2}

(3) 命令行赋值

在${val1}运行时使用”-v”参数来给变量赋值

log ${val1}

如果直接运行则会输出最初定义的变量值value,

connect

结果如图:
connect

此时在run界面上的Arguments里加一行:

1
-v val1:abcde

结果如图所示:

connect


robotframework RIDE的日志没显示

描述:第一次运行的时候日志能展示,再次运行脚本就没有日志了,重启ride还是出现这个问题

解决方法1:

修改python路径\Lib\site-packages\robotide\contrib\testrunner目录下testrunner.py文件(第400行)

pop方法的内容改成如下即可:

1
2
3
4
5
6
7
8
9
10
11
12
def pop(self):
result = ""
for _ in xrange(self._queue.qsize()):
try:
result += self._queue.get_nowait()
except Empty:
pass
try:
result=result.decode('UTF-8')
except UnboundLocalError:
pass
return result

connect

修改完成之后需要关闭robotframework RIDE,重启一下才会生效

展示效果如下:

connect

解决方法2:
进入run界面,勾选:show message log.如图所示:

connect

热评文章