關鍵字的使用:python
RF的能力是由關鍵字提供的,因此,咱們必須對RF的經常使用關鍵字有個瞭解 。函數
最經常使用的關鍵字就在RF的關鍵字中。http://robotframework.org測試
其中Builtin是標準庫中的內置庫,Shotcuts Keywords就是關鍵字目錄表。ui
關鍵字參數:spa
Should Be Equal 是否相等日誌
Should Be True 特殊關鍵字 RF會直接用python解釋器的eval函數,來解釋這個參數表達式對象
*注意*:should be true和python的兩個區別:1- 變量前面加個$符號 2- 不能中間有多於兩個空格字符串
Should Contains 是否包含get
set Variable 設置變量 只支持賦值一個字符串給變量,若想賦值一個整數或浮點數,需用到Convert To Interger 或Convert To Numberit
log 日誌
log to console 打印到控制檯
sleep 睡眠
認識測試庫:
一般,關鍵字是由測試庫提供的,其實測試庫就是python模塊文件。關鍵字就是python庫裏面的函數和類的方法。
RF自己就是個python程序,因此它的尋找庫文件和python是同樣的,最終是經過sys.path。
咱們在哪一個目錄下面運行robot,那個目錄就是當前工做目錄。當前工做目錄就是在sys.path裏面的。因此咱們放在當前目錄下的python模塊文件,直接就能被找到。
RF使用函數名、方法名、大小寫不敏感。
庫的導入:
要使用測試庫提供的關鍵字,咱們必需要申明導入庫。固然RF的Builtin庫的關鍵字不須要申明。
庫的名稱在RF裏是大小寫敏感的。
有的庫,在導入時能夠提供參數。其實這些導入帶參數的庫,對應的測試庫都是用類實現的。這些參數就是類的初始化方法__init__裏面的參數。以下:
Library | SeleniumLibrary | 15
Library | SeleniumLibrary | 0 | 15 |
Library | SeleniumLibrary | 5 | run_on_failure=Log Source
變量的用法:
RF中的變量,實質上就是一個Python變量,它指向一個python 對象。因此RF變量對應的是什麼python 對象,它就是什麼類型的變量。
① Scalar方式
普通用法就是:${var}來表示
特色是:當咱們把變量以Scalar方式傳遞給關鍵字做爲參數時,就是直接把它對應的python對象傳遞給關鍵字對應的函數。
② List方式
若是RF變量實際指向一個Python List對象,能夠把它以List方式傳遞給關鍵字做爲參數。
List方式 是用@{var}的方式來表示。這種方式表示的變量叫作List變量。
List方式,實際上會展開其List中的每一個元素,做爲多個參數傳入。
③ Dictionary方式
若是RF變量實際指向一個Python Dict對象,還能夠把它以Dict方式傳遞給關鍵字做爲參數。
Dictionary方式是用&{var}的方式來表示
Dictionary方式,實際上會展開其Dict中的每一個元素,做爲多個參數傳入。
訪問環境變量:
RF中能夠用%{env_var}方式直接訪問一個環境變量,好比 printarg %{path}
循環:
RF用:FOR來實現循環,沒有while循環;
遍歷List變量;
IN RANGE用法;
注意::FOR 前面的冒號不要忘記了;
若是後面的變量是個list,必定要寫成@的形式,而不是$的形式;
for循環體內的語句,要縮進一個單元格,若是是純文本文件,連續的空格是沒法表示多個單元格的,RF只會當成一個。因此前面還要有一個反斜槓轉義,表示這邊有一個空的單元格。
range用法:使用in range 中間只能是一個空格 他們是一個組合 以下:
[Documentation] 打印0-9的數字
:for ${index} IN RANGE 10 注意:IN RANGE 必須大寫,纔會進行遍歷
\ Log To Console ${index}