認識Selenium — Test Runner 模式和使用

來源:互聯網
上載者:User

test runner 模式

Selenium test runner 指令碼,也稱測試案例(test case),是用 HTML 語言通過一個簡單的表布局編寫的,如下代碼:

Selenium 測試案例的結構

 table border="1">    tr>      td>First commandtd>      td>Targettd>      td>Valuetd>    tr>    tr>      td>Second commandtd>      td>Targettd>      td>Valuetd>    tr>  table>
test runner 指令碼通常與所測試的應用程式(AUT)部署在同一個伺服器上。
這是因為 browser bot 使用 JavaScript 來類比使用者操作。
這些指令碼在一個受限制的沙箱環境中運行。
如果需要繞過這些限制,可以使用一個代理。

test runner 指令碼使用與 xUnit 架構相同的測試套件(test suite)和測試案例概念。測試案例和命令按照它們在測試套件和測試案例中出現的順序依次執行。

在 以上代碼 中:

  • 第一列包含命令斷言
  • 第二列包含命令或斷言的目標(target)。這裡可以用多種受支援的組件定位器中的一種來指定目標。通常使用的是組件的 ID 或名稱,但 XPath 和 DOM 定位器也是受支援的。
  • 第三列包含用於為命令或斷言指定參數的。例如,當使用 type 命令時,這一列可能就是一個文本域所期望的值。

 

即使對於非技術人員來說,test runner 指令碼也易於閱讀和編寫。當在一個瀏覽器中開啟 上面的代碼 中的例子時,將得到類似這樣的一個表:

First command Target Value
Second command Target Value

 

測試案例執行個體

執行 如下的測試指令碼時,它將執行以下操作:

  1. 通過進入 TestSelenium2.html 開啟變更地址頁面。
  2. 在 ID 為 q 的文字框中輸入 Betelgeuse state prison
  3. 單擊名為 'btnZzk' 的輸入區。注意,這裡使用 XPath 找到 Submit 按鈕,這導致表單資料被發送到伺服器。
  4. 驗證頁面是否包含文本 Address change successful
table>    tr>      td>opentd>      td>TestSelenium2.htmltd>      td>td>    tr>    tr>      td>typetd>      td>//input[@id='q']td>      td>Betelgeuse state prisontd>    tr>    tr>      td>clicktd>      td>//input[@id='btnZzk']td>      td>td>    tr>    tr>      td>verifyTextPresenttd>      td>Address change successfultd>      td>td>    tr>  table>
感覺這裡的代碼跟使用Selenium RC 測試時,代碼似乎很相似,不同就是RC是用我們平常使用的進階程式設計語言來測試,而Test Runner是用HTML來表示的。
我的TestSelenium2.html頁面內容很簡單:
input type="text" id="q"/>input type="button" id="btnZzk" onclick="zzk()" text="找找看"/>div id="div1">div>script>    function zzk()    {        document.getElementById("div1").innerHTML="Address change successful";    }script>

 

點擊右側“運行選定的測試”開始測試:

運行全部是綠色的,表示通過.

1Run,1Passed,運行測試通過。

在頁面的下方,出現了我們要測試的頁面TestSelenium2.html,也正是我們期望的現實內容。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.