一、瀏覽器驅動
通過不同的瀏覽器執行腳本。
| Open Browser |
Htpp://www.xxx.com |
chrome |
瀏覽器對應的關鍵字:
| firefox |
FireFox |
| ff |
|
| internetexplorer |
Internet Explorer |
| ie |
|
| googlechrome |
Google Chrome
|
| gc |
|
| chrome |
|
| opera |
Opera |
| phantomjs |
PhantomJS |
| htmlunit |
HTMLUnit |
| htmlunitwithjs |
HTMLUnit with Javascipt support |
| android |
Android |
| iphone |
Iphone |
| safari |
Safari |
備注:
要想通過不同的瀏覽打開URL地址,一定要安裝瀏覽器相對應的驅動。如chrome 的驅動:
chromedriver.exe 等。
瀏覽器默認為空時啟動FireFox。
二、關閉瀏覽器
關閉瀏覽器
| Close Browser |
|
|
關閉當前的瀏覽器。
關閉所有瀏覽器
| Close All Browsers |
|
|
關閉所有打開的瀏覽器和瀏覽器緩存重置。
三、瀏覽器最大化
| Maximize Browser Window |
|
|
使當前打開的瀏覽器全屏。
四、設置瀏覽器寬、高
| Get Window Size |
800 |
600 |
以像素為單位,第一個參數800表示寬度,第二個參數600表示高度。
五、文本輸入
| Input Text |
Xpath=//* [@] |
輸入信息 |
Xpath=//* [@] :表示元素定位,定位文本輸入框。
六、點擊元素
| Click Element |
Xpath=//* [@] |
|
Xpath=//* [@] :表示元素定位,定位點擊的元素。
七、點擊按鈕
| Click Button |
Xpath=//* [@] |
|
Xpath=//* [@] :表示元素定位,定位點擊的按鈕。
八、注釋
注釋1:
| Comment |
注釋說明 |
|
注釋2:
| # 注釋說明 |
|
|
除了使用Comment 關鍵字進行注釋外,Robot framework框架是基於python語言開發的,所以提供了python語言的注釋“#”方式。
九、固定時間休眠
| Sleep |
42 |
|
| Sleep |
1.5 |
|
| Sleep |
2 minutes 10 seconds |
|
Sleep表示執行到當前行固定休眠多長時間,以“秒”為單位。
42表示42秒;
1.5 表示1.5秒;
2 minutes 10 seconds 表示2分10秒。
十、等待元素出現在當前頁面
| Wait Until Page Contains Element |
Xpath=//* [@] |
42 |
error |
Xpath=//* [@] :表示元素定位,這里定位出現的元素
42 : 表示最長等待時間。
Error : 表示錯誤提示,自定義錯誤提示,如:“元素不能正常顯示”
十一、獲取title
| Get Title |
|
|
獲得當前瀏覽器窗口的title 信息。
這里只獲取title 是沒有意義的,我們通常會將獲取的title 傳遞給一個變量,然后與預期結果進行比較。從而判斷當前腳本執行成功。
十二、獲取文本信息
| Get Text |
Xpath=//* [@] |
|
Xpath=//* [@] : 定位文本信息的元素。
十三、獲取元素屬性值
| Get Element Attribute |
id=kw@name |
|
id=kw@name : id=kw 表示定位的元素。@nam 獲取這個元素的name屬性值。
十四、cookie處理
獲取cookie
| get cookies |
|
|
獲得當前瀏覽器的所有cookie 。
獲得cookie值
| get cookie value |
Key_name |
|
Key_name : key_name 表示一對cookie中key的name 。
刪除cookie
| delete cookie |
Key_name |
|
刪除key為name 的cookie信息。
刪除所有cookies
| delete all cookies |
|
|
刪除當前瀏覽器的所有cookie。
添加cookie
| add cookie |
Key_name |
Value_name |
添加一對cooke (key:value)
十五、聲明變量
| ${a} |
Set Variable |
hello |
定義變量a為hello。
| ${a} |
${b}= |
Set Variable |
hello |
world |
定義變量a為hello ,b為world 。
十六、日志(輸出)
| ${a} |
Set Variable |
Hello World |
| log |
${a} |
|
在測試報告中輸出a變量的值hello word。

十七、獲得瀏覽器窗口寬、高
| ${width} |
${height} |
get window size |
| log |
${width} |
|
| log |
${height} |
|
獲得瀏覽瀏覽器窗口寬、高,通過log 將寬高,打印到報告中。

十八、驗證
| open browser |
http://www.baidu.com |
chrome |
| ${title} |
Get Title |
|
| should contain |
${title} |
百度一下,你就知道 |
Open Browser 通過chrome打開百度首頁。
Get Title 獲得瀏覽器窗口的titile ,並賦值給變量${title}
Should Contain 比較${title}是否等於“百度一下,你就知道”。

如果item1 不包含 item2 一次或多次,那么失敗。
十九、表單嵌套
| Select Frame |
Xpath=//* [@] |
|
| Unselect Frame |
|
|
Select Frame 進入表單,Xpath=//* [@] 表示定位要進入的表單。
Unselect Frame 退出表單。
二十、下拉框選擇
| Unselect From List By Value |
Xpath=//* [@] |
vlaue |
|
|
|
|
Xpath=//* [@] 定位下拉框;
Vlaue 選擇下拉框里的屬性值。
二十一、If分支語句
| ${a} |
Set variable |
2 |
|
|
| ${b} |
Set variable |
5 |
|
|
| run keyword if |
${a}>=1 |
log |
a大於1 |
|
| ... |
ELSE IF |
${b}<=5 |
log |
b小於等於5 |
| ... |
ELSE |
log |
上面兩個條件都不滿足 |
|
首先定義兩個變量a ,b 分別為 2 和5 。
If 判斷 a 大於等於1 ,滿足條件log 輸出 “a大於1 ”;
不滿足上面的條件,接着else if 判斷b小於等於5 ,滿足條件log 輸出 “b小於等於5”;
上面兩個條件都不滿足,else log輸出“上面兩個條件都不滿足”。
備注:注意sele if 和else前面的三個點點點(...)
二十二、for 循環語句
循環1
| :FOR |
${i} |
in range |
10 |
|
|
log |
${i} |
|
查看結果:

循環變量i 從0 到9 循環10次。
循環2
| @{a} |
create list |
aaa |
bbb |
| :FOR |
${i} |
in |
@{a} |
|
|
log |
${i} |
|
@{a} 定義為一個字符串列表。
通過in 可遍歷非整型(in range)

說明:
Log 、if 分支,for 循環並非selenium關鍵字庫的提供的方法,是由BuiltIn包提供。
