您的位置:軟件測試 > 開源軟件測試 > 開源功能測試工具 > Selenium
Selenium自動化測試用例設(shè)計(jì)注意事項(xiàng)
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2013/1/25 14:02:31 ] 推薦標(biāo)簽:

  自動化測試設(shè)計(jì)簡介

  我們在本章提供的信息,對自動化測試領(lǐng)域的新人和經(jīng)驗(yàn)豐富的老手都是有用的。本篇中描述常見的自動化測試類型, 還描述了可以增強(qiáng)您的自動化測試套件可維護(hù)性和擴(kuò)展性的“設(shè)計(jì)模式”。還沒有使用這些技術(shù)的、有經(jīng)驗(yàn)的自動化測試工程師會對這些技術(shù)更加感興趣。

  測試類型

  您應(yīng)該測試應(yīng)用程序中的哪些部分?這取決于您的項(xiàng)目的各種影響因素:用戶的期望,時(shí)間期限,項(xiàng)目經(jīng)理設(shè)置的優(yōu)先事項(xiàng)等等。但是,一旦項(xiàng)目邊界定義完成,作為測試工程師,你必須做出要測試什么的決定。

  為了對Web應(yīng)用的測試類型進(jìn)行分類,我們在這里創(chuàng)建了一些術(shù)語。這些術(shù)語并不意味著標(biāo)準(zhǔn),但是這些概念對web應(yīng)用測試來說非常典型。

  ● 測試靜態(tài)內(nèi)容

  靜態(tài)內(nèi)容測試是簡單的測試,用于驗(yàn)證靜態(tài)的、不變化的UI元素的存在性。例如:

  → 每個(gè)頁面都有其預(yù)期的頁面標(biāo)題?這可以用來驗(yàn)證鏈接指向一個(gè)預(yù)期的頁面。

  → 應(yīng)用程序的主頁包含一個(gè)應(yīng)該在頁面頂部的圖片嗎?

  → 網(wǎng)站的每一個(gè)頁面是否都包含一個(gè)頁腳區(qū)域來顯示公司的聯(lián)系方式,隱私政策,以及商標(biāo)信息?

  → 每一頁的標(biāo)題文本都使用的<h1>標(biāo)簽嗎?每個(gè)頁面有正確的頭部文本內(nèi)嗎?

  您可能需要或也可能不需要對頁面內(nèi)容進(jìn)行自動化測試。如果您的網(wǎng)頁內(nèi)容是不易受到影響手工對內(nèi)容進(jìn)行測試足夠了。如果,例如您的應(yīng)用文件的位置被移動,內(nèi)容測試非常有價(jià)值。

  ● 測試鏈接

  Web站點(diǎn)的一個(gè)常見錯(cuò)誤為的失效的鏈接或鏈接指向無效頁。鏈接測試涉及點(diǎn)各個(gè)鏈接和驗(yàn)證預(yù)期的頁面是否存在。如果靜態(tài)鏈接不經(jīng)常更改,手動測試足夠。但是,如果你的網(wǎng)頁設(shè)計(jì)師經(jīng)常改變鏈接,或者文件不時(shí)被重定向,鏈接測試應(yīng)該實(shí)現(xiàn)自動化。

  ● 功能測試

  在您的應(yīng)用程序中,需要測試應(yīng)用的特定功能,需要一些類型的用戶輸入,并返回某種類型的結(jié)果。通常一個(gè)功能測試將涉及多個(gè)頁面,一個(gè)基于表單的輸入頁面,其中包含若干輸入字段、提交“和”取消“操作,以及一個(gè)或多個(gè)響應(yīng)頁面。用戶輸入可以通過文本輸入域,復(fù)選框,下拉列表,或任何其他的瀏覽器所支持的輸入。

  功能測試通常是需要自動化測試的復(fù)雜的測試類型,但也通常是重要的。典型的測試是登錄,注冊網(wǎng)站賬戶,用戶帳戶操作,帳戶設(shè)置變化,復(fù)雜的數(shù)據(jù)檢索操作等等。功能測試通常對應(yīng)著您的應(yīng)用程序的描述應(yīng)用特性或設(shè)計(jì)的使用場景。

  ● 測試動態(tài)元素

  通常一個(gè)網(wǎng)頁元素都有一個(gè)的標(biāo)識符,用于地定位該網(wǎng)頁中的元素。通常情況下,標(biāo)識符用HTML標(biāo)記的’id’屬性或’name’屬性來實(shí)現(xiàn)。這些標(biāo)識符可以是一個(gè)靜態(tài)的,即不變的、字符串常量。它們也可以是動態(tài)生產(chǎn)值,在每個(gè)頁面實(shí)例上都是變化的。例如,有些Web服務(wù)器可能在一個(gè)頁面實(shí)例上命名所顯示的文件為doc3861,并在其他頁面實(shí)力上顯示為doc6148,這取決于用戶在檢索的‘文檔’。驗(yàn)證文件是否存在的測試腳本,可能無法找到不變的識別碼來定位該文件。通常情況下,具有變化的標(biāo)識符的動態(tài)元素存在于基于用戶操作的結(jié)果頁面上,然而,顯然這取決于Web應(yīng)用程序。

  下面是一個(gè)例子。

<input id="addForm:_ID74:_ID75:0:_ID79:0:     checkBox" type="checkbox" value="true" />

  這是一個(gè)HTML標(biāo)記的復(fù)選框,

  其ID (addForm:_ID74:_ID75:0:_ID79:0:checkBox) 是一個(gè)動態(tài)生成的值。這個(gè)頁面下次被打開時(shí),復(fù)選框的ID將可能是一個(gè)不同的值。

  ● Ajax的測試

  Ajax是一種支持動態(tài)改變用戶界面元素的技術(shù)。頁面元素可以動態(tài)更改,但不需要瀏覽器重新載入頁面,如動畫,RSS源,其他實(shí)時(shí)數(shù)據(jù)更新等等。Ajax有不計(jì)其數(shù)的更新網(wǎng)頁上的元素的方法。但是了解AJAX的簡單的方式,可以這樣想,在Ajax驅(qū)動的應(yīng)用程序中,數(shù)據(jù)可以從應(yīng)用服務(wù)器檢索,然后顯示在頁面上,而不需重新加載整個(gè)頁面。只有一小部分的頁面,或者只有元素本身被重新加載。

上一頁1234下一頁
軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd