Robotframework中自定义库的加载及注意事项

来源:互联网 发布:淘宝模板复制软件 编辑:程序博客网 时间:2024/06/13 13:21

Robotframework中自定义库的加载及注意事项

    • Robotframework中自定义库的加载及注意事项

1.自定义库的文件名必须与库的类名相同
如:文件名为HttpAutoLib.py则其类名必须为HttpAutoLib

class HttpAutoLib(object):    def __init__(self):        self.Http = E_Http('./config/http_conf.ini')        self.MyHttp = My_Http('./config/http_conf.ini')        self.Global = Global()

2.由于自定义库时,RF会自动实例库中的类,所以自定义看中无法使用相对路径寻找及创建文件
如:下面两种方式均无法正常找到对应的目录

log_file = os.path.join(os.getcwd(),"log\\%s"%(file_name))path = ./log

3.通过logging和print输出的日志均会打印到RF的log中

4.自定义库或第三方库,可按如图的1、2、3的步骤加载
这里写图片描述

5.第三方库加载成功后,可通过快捷键F5查看对应的接口名、参数、及备注信息
这里写图片描述

6.若自定义的库加载为红色,可通过Tools->View RIDE Log->查看对应的错误日志,将自定义库做修改后,可在RF中删除库重新加载或重启RF,RF将重新加载编译库文件,当库名变为黑色时,即加载库成功

7.步骤5)图中的描述信息,需按照如下的编写格式书写

def post(self,path,para,data,cookie):      '''发送post请求,返回回复的报文      Issues a HTTP POST request,parameter should be a python dict,data is post entity, this method return a string object.      :param path:      :param para:      :param data:      :param cookie:      :return:Examples:      | ${res} | POST | /foo/bar.do | {'foo': '1','bar': '2'} | {"foo": {"bar": [1,2,3]}} | cookie |      | ${res} | POST | /foo/bar.do | {'foo': '1','bar': '2'} | None | cookie |      '''      return self.Http.post(path,para,data,cookie)

8.RF中的用例是否执行成功的判别机制为是否存在异常,故在库编写时若需让用例执行的结果为失败,可使用raise抛出异常

9.通过RF的RIDE直接读取的数据均为Unicode的utf-8编码格式

0 0
原创粉丝点击