利用Robot Framework編寫測試用例,往往需要開發自己的關鍵字,有的關鍵字需要通過自己編寫python代碼來實現。這在rf中,就需要自己定義python庫。這個過程其實不復雜,本文來介紹下。
1、在python安裝目錄下的 Lib\site-packages 目錄下 新建一個目錄,目錄名就是庫名,如 NewLibrary
2、在新建的NewLibrary目錄下創建一個python文件,任何合法的文件名即可,擴展名為py。如:myclass.py
其內容如下
class MyClass(object): def __init__(self): pass def printMsg(self,msg): print "hello "+msg
上面代碼定義了一個python類,其中除構造方法 _init_ 外,還定義了一個printMsg方法,該方法其實就是rf中的關鍵字,可以直接在rf中使用。下面我們介紹。
3、在新建的NewLibrary目錄下創建 __init__.py 文件,文件名必須固定這樣。該文件的功能,就是把關鍵字類暴露出來,讓rf能知道。
其內容如下:
from myclass import MyClass class NewLibrary(MyClass): ROBOT_LIBRARY_SCOPE = 'GLOBAL'
4、通過前面三個步驟,一個最簡單的自定義的NewLibrary庫就創建好了,在rf工具中就可以使用了
1)先要導入 NewLibrary 庫
2)使用關鍵字printMsg。需要說明的是,在rf中引用時,既可以寫成 printMsg,也可寫成 print msg。一般習慣用空格把單詞分開。因為rf關鍵字不區分大小寫。
*** Test Cases *** successsd print msg god printMsg ss printmsg yy
5、增加新的關鍵字
增加新的關鍵字很簡單,只需在MyClass類中增加新的方法即可。如:
class MyClass(object): def __init__(self): pass def printMsg(self,msg): print "hello "+msg def join_info(self,a,b): print a+b
這里定義了 join_info方法。在rf中使用時,可以寫成 join info 用空格分開。
上面介紹了最簡單的自定義模塊,雖然簡單,但實際可以滿足大部分自己開發的需求了。