說明:
此文檔隻是将最常用的UI 操作列出。更多方法請查找selenium 關鍵字庫。
一、浏覽器驅動
通過不同的浏覽器執行腳本。
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)
說明: