在RF中,關鍵字是一個非常重要的存在。想做任何事情,都是通過關鍵字來實現的。
這篇文章對RobotFramework中的關鍵字做個整理。大概分為以下幾點內容:
1、什么是關鍵字
2、關鍵字來自哪里、有哪些類型
3、如何使用關鍵字
4、如何定義用戶關鍵字
5、資源文件使用
1、什么是關鍵字
總結一句話:一個關鍵字實現了單一的功能。
使用一個關鍵字,就等於是去使用了一個功能。
例如,在生活中,做飯使用了廚房,睡覺使用了床,出行使用了公交等等。
一樣的道理 ,那在RF中,輸出文本使用了關鍵字:log;創建變量使用了關鍵字:set Variable; 執行python語句使用關鍵字:evulate
另外,我們在使用有些功能的時候 ,需要提供一定的數據,才可以正常使用功能。
比如高鐵出行,必須提供身份證和高鐵票這兩樣數據,才能夠成功的使用高鐵出行這個功能。
那么在RF中,自然也會有類似這樣的場景需求。表達形式就是在使用關鍵字的時候,需要同時傳入參數數據。
ps:RF中的關鍵字,對應的就是python中的函數。
所以關鍵字由關鍵字名稱、參數、返回值三部分組成。
2、關鍵字來自哪里、有哪些類型
既然RF中的關鍵字,與python中的函數保持一致。那么函數來自於哪里,基本上關鍵字也就來自於哪里。
函數主要來自於:python自帶、python第三方庫、用戶自定義模塊和包。
那在RF中,就不得不提,另外一個重要的存在:庫。
庫:理解為功能倉庫,即封裝了一系列功能。
關鍵字按照用途分門別類的放在不同的功能倉庫中。
RobotFramework在安裝成功之后,會自帶標准庫。標准庫中均是關鍵字。 =======相對於python自帶。
RobotFramework也支持豐常豐富的第三方庫。 =======相對於python第三方庫
也支持用戶利用python或者java語言編寫自己的第三方庫。 =======相對於用戶自定義的模塊和包
下圖為庫與關鍵字的關系圖:
上圖中的系統關鍵字又是什么呢?
在RF中,關鍵字也分為兩種類型:系統關鍵字和用戶關鍵字。
系統關鍵字:來自於測試庫。無論是標准庫、第三方庫、還是用戶用編程語言定義的。
用戶關鍵字:利用RF編輯工具,按照RF的語法規則定義的關鍵字(而不是直接寫代碼)。於測試而言,一般來說用戶關鍵字都跟系統業務有關。
3、如何使用關鍵字
由上可知,一個關鍵字就是一個功能。
我們通過關鍵字的名稱來使用關鍵字。如果需要傳遞參數,那么就傳遞參數。PS:是不是跟python函數的使用一模一樣??
以RF自帶BuildIn中的關鍵字log為例:
1)創建一個測試套件文件;
2)創建一個測試用例,並調用log關鍵字;
測試用例為:用例名稱(圖中的黑色粗體)、用例內容。
用例內容中:藍色粗體為關鍵字名稱。關鍵字后面的內容為傳入的參數。關鍵字與參數之間、多個參數之間用Tab鍵隔開。
注意:在Eclipse中 用例內容部分會自動縮進。請按照縮進的方式調用關鍵字即可。此規則與python保持一致。