RF之關鍵字、變量、循環

關鍵字的使用: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}

相關文章
相關標籤/搜索