开发系统关键字
之前在51testing培训了三个月,一直学习的自动化测试框架是Java的TestNG框架。毕业后的第一份工作是测试开发工程师,新公司要求用robot framework来做自动化测试。看虫师的视频,有很大收获,也有一些自己的想法。robot官网提供了很多的库,有很多的关键字,但是如果你对现有的关键字,不满意,可以自己开发系统每个关键字。
比如说Selenium2Library库,下载之后,是放在了python目录下lib的site-packages包下,所以我们开发的系统关键字也要放在这个路径下。
1、举个例子,想要开发一个加减乘除的系统关键字,我们首先写一个calc.py文件
1 #coding=utf-8 2 3 class Calc(object): 4 def add(self,a,b): 5 c=int(a)+int(b) 6 return c 7 8 def sub(self,a,b): 9 c=int(a)-int(b) 10 return c 11 12 #验证该python文件是正确的 13 c=Calc() 14 print c.add(1,4)
2、新建一个main.robot的文件,调用上面定义的add、sub方法
1 ***Settings*** 2 Library Calc 3 4 ***Test Cases*** 5 case1 6 ${result} add 5 6 7 log ${result} 8 9 ${result} sub 8 9 10 log ${result}
3、要想运行起来,必须还有有一个__init__.py文件,在python-lib-site-packages下新建一个Calc文件夹,下面新建__init__.py文件
1 from calc import Calc 2 3 __version__='0.1' 4 5 class CalcCode(Calc): 6 ROBOT_LIBRARY_SCOPE='GLOBAL'
其中,先从calc.py中导入Calc类,然后定义CalcCode集成Calc类,这样就成了库,在main.robot中,声明Library是python-lib-site-packages-Calc目录,之后用例使用Calc类中的add、sub方法,执行。
结果如下:
在工作区间查看log.html,
已经打印出来。
感谢您的阅读,辛苦!
本文来自博客园,作者:Yi个人,转载请注明原文链接:https://www.cnblogs.com/feifei-cyj/p/7522724.html