关于robot framework调用python
最近在做部门的自动化测试研究,在选型的时候主要考虑到以下几点:
1、可以扩展,支持自己写python脚本,以便特殊场景可以调用
2、支持特殊控件,下拉框,树形等控件
3、支持数据库,方便特殊场景检验
4、支持多个浏览器
刚好这几点rf都是满足的。
今天想跟大家分享以下自动化测试rf调用原生python怎么写,怎么封装关键字。
第一步,在C:\Python27\Lib\site-packages(我安装python到C盘)路径下新建CustomLibrary文件夹。
第二步,写好我们的python脚本:runbat.py,如下图。然后放到该路径下:C:\Python27\Lib\site-packages\CustomLibrary
-
# coding = utf-8
-
class Runbat(object):
-
def open_FireFoxx_Browser(self,url):
-
from selenium import webdriver
-
browser = webdriver.Firefox()
-
browser.get(url)
-
if __name__ == '__main__':
-
run = Runbat()
-
run.open_FireFoxx_Browser('https://www.baidu.com')
注意在 run_all_bat()方法下面加上清晰的注释,最好给个实例。这样在 robot framework 的帮助
中能看到这些信息,便于使用者理解这个关键字的使用。
对于创建普通的模块来说这样已经 ok 了。但要想在 robot framework 启动后加载这个关键字,
还需要在 CustomLibrary 目录下创建__init__.py 文件,并且它不是空的。
第三步,需要在该路径下创建 __init__.py文件,如下图。依然放到该路径下:C:\Python27\Lib\site-packages\CustomLibrary
-
from runbat import Runbat
-
class CustomLibrary(Runbat):
-
ROBOT_LIBRARY_SCOPE = 'GLOBAL'
这个文件中其实有用的信息就三行,但必不可少。robot framwork 在启动时会加载这个文件,因为
在这个文件里指明了有个 runbat 文件下面有个 Runbat 类。从而加载类里的方法(open_FireFoxx_Browser())。
第四步:打开RIDE,点击LIbrary,输入CustomLibrary,导入我们自建的库
第五步:新建测试用例,如图,即可运行。
这样就大功告成了!