1. 程式人生 > >robot+selenium編寫web UI自動化用例

robot+selenium編寫web UI自動化用例

web UI 自動化

通常我們可以用robot framework寫接口自動化用例,但是有些站點如果未做前後端分離,叠代過程中又有大量的重復測試工作量,沒有接口可調用驗證,也有自動化測試需求,怎麽辦?這時候,那個深坑頻現的web UI自動化就勢在必行了。robot只是自動化框架,好在他穩定而且擴展性極好,要想驅動web瀏覽器自動幹活,只需要安裝另外一個神器selenium,下文將提綱攜領介紹web UI如何入門,一旦你入了門,其余的就是baidu和看官網幫助的工作量了,建議用到了在查,不然也沒卵用。

用例編寫前提:

  • 已經部署好了robot/python3環境,詳見:
  • 安裝selenium,推薦3.11.0版本: pip install selenium==3.11.0
  • 安裝robotframework-seleniumlibrary,推薦3.1.1版本: pip install robotframework-seleniumlibrary==3.1.1
  • 安裝webdriver,推薦比較流行的chromedriver,從這裏下載:http://chromedriver.storage.googleapis.com/index.html
    chromedriver的版本需要和本機的chrome瀏覽器對應,才能正常使用;下載對應版本的chromedriver驅動文件,具體版本對應關系表:
    chromedriver版本 | 支持的Chrome版本
    v2.33 | v60-62
    v2.32 | v59-61
    v2.31 | v58-60
    v2.30 | v58-60
    v2.29 | v56-58
    v2.28 | v55-57
    v2.27 | v54-56
    v2.26 | v53-55
    v2.25 | v53-55
    v2.24 | v52-54
    v2.23 | v51-53
    v2.22 | v49-52
    v2.21 | v46-50
    v2.20 | v43-48
    v2.19 | v43-47
    v2.18 | v43-46
    v2.17 | v42-43
    v2.13 | v42-45

window平臺的話,解壓後放到本機chrome瀏覽器文件路徑裏,如:

C:\Program Files (x86)\Google\Chrome\Application
或者系統path裏增加chromedriver的解壓地址

在用例文件中引用selenium包

*** Settings ***
Library  Collections
Library  SeleniumLibrary

一個樣例如下:

*** Test Cases ***

my first html
        #創建一個chrome瀏覽器
    Open Browser    http://www.我的域名.cn/     chrome

     #輸入文本框
    input text      id=inputName            admin
    input text      id=inputPassword        admin
    input text      id=inputCode            123

    #點擊按鈕
    Click Button    Xpath=//form/div/span/button

        #單擊A標簽    | locator表示定位器
        #Click Link | locator

        #單擊某個標簽
        #Click Element    Xpath=//ul[@id=‘systemSetting0‘]

    ${cnt}          get title
    log     ${cnt}

    ${title}        get window titles
    log     ${title}
    Title Should Be    一個後臺
    Location should Contain  http://www.我的域名.cn/
    Page Should Not Contain     不包含我
    Page Should Contain         必須包含我

        # 關閉打開的瀏覽器
        Close Browser
    Close All Browsers

執行用例你將會看到,一個chrome自動打開,並且輸入密碼,點擊了登錄,也可能速度奇快看不清,為了看的清晰,可以用sleep方法在每步停留幾秒:

# 這裏的單位是秒
sleep   3

當然,如果你的web加載比較慢,用停留幾秒來規避是不靠譜的,建議用這個方法:

Wait Until Page Contains Element

robot+selenium編寫web UI自動化用例