一、瀏覽器驅動
通過不同的瀏覽器執行指令碼。
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包提供。