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 = ./log3.通過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編碼格式
新聞熱點
疑難解答