学习Robot Framework必须掌握的库BuiltIn库

近来经常有童鞋问我一些RF的基本问题,如:如何实现循环?如何退出循环?如何实现判断?如何做类型转换?其实,作为一门表格语言,为了保持简单的结构,RF没有像别的高级语言那样提供类似if else while等内置关键字来实现各种逻辑功能(注1),而是提供给了用户BuiltIn库。如果用户想在测试用例中实现比较复杂的逻辑,那就需要对BuiltIn中的重要关键字有一些了解。另外,BuiltIn库中还封装了很多常见方法和能够控制RF运行状态的关键字,如果想用好RF,一定要对BuiltIn库中的函数有一个比较全面的理解。下面就带着大家认识一下BuiltIn库中比较重要的关键字。

 
Evaluate 关键字:如果你需要进行一些数值运算并得到结果,你就需要用到Evaluate关键字。Evaluate会把你想要计算的表达式直接传递给Python,并把Python的计算结果返回给你。这是最经常要用到的。
 
Should 系列关键字:Should系列关键字是Should大头的一系列关键字。
这些关键字都是用作判断时用的,每个用例都会用到,比如我们的执行结果得到了一个字符串,我们要判断这个字符串要与一个预期字符串相等,否则用例就无法通过,这时候,肯定会用上 Should Be Equal As String
关键字,其它关键字我们通过关键字的名字就能顾名思义,知道它的作用。
 
Convert To系列关键字:
做类型转换比不可少。
 
Run keyword系列关键字:
 
这些关键字能根据一个判断条件的真假来看是否执行关键字。一般使用这些关键字来实现高级语言中的if else功能。最常用的是Run Keyword If 和 Run Keyword unless  他们俩实现的效果正好相反。
 
Exit For Loop关键字:
用作退出循环,一般和Run keyword if 关键字联合使用,来实现条件退出。
 
 
Wait Until Keyword Succeeds
这是一个将异步调用变为同步调用的关键字。举一个例子:如果call某个WebService,并且需要得到返回结果才能做下一部操作。我们就会用到这个关键字。
 
BuiltIn库里还有很多宝贝,比如日期相关的关键字Get Time。让测试暂停的Sleep等。都相当有用。还等什么?
去这个链接遍历一遍它吧:)http://robotframework.googlecode.com/hg/doc/libraries/BuiltIn.html
 
 
注1:RF目前仅有2个内置关键字:FOF 和 IN,来实现循环结构。功能还是比较弱的。


作者:叉叉敌
博客:https://chasays.github.io/
微信公众号:Chasays, 欢迎关注一起吹牛逼,也可以加个人微信号「xxd_0225」互吹。
本博客大多为学习笔记或读书笔记,本文如对您有帮助,还请多推荐下此文,如有错误欢迎指正,相互学习,共同进步。

原文地址:https://www.cnblogs.com/ievjai/p/14382753.html