手把手教你如何使用TestNG框架建立Selenium指令碼?

博為峰網校發表於2019-03-22

TestNG在某種方式上對於開發者和測試者來說是一種更高階的測試框架,如果已經使用Junit框架的人來說,TestNG並沒有什麼高階的特徵。

JUnit在Java應用程式、Java開發人員和Java測試人員中很流行使用,很大程度上提高了程式碼質量。

儘管JUnit是一個易於使用和簡單明瞭的框架,但它也有自己的侷限性,這就需要引入TestNG。

TestNG是由一個名為“Cedric Beust”的著名程式設計師建立的。TestNG是一個開源框架,它是在Apache軟體許可下發布的,可以隨時下載。

手把手教你如何使用TestNG框架建立Selenium指令碼?

我們在WebDriver中引入TestNG的需求,是因為它提供了一種有效的測試結果格式,可以與大眾共享,使我們可以瞭解產品/應用程式的健康狀況,TestNG消除WebDriver無法生成測試報告的缺點。它有一個內建的異常處理機制,它允許程式在不意外終止的情況下執行。

TestNG和JUnit都屬於同一個單元框架系列,TestNG是JUnit的擴充套件版本,在當前環境下得到了更廣泛的使用。

下面我們就來討論下關於TestNG的所有特徵和應用:

一.TestNG的特點

支援註釋

支援引數化

不需要建立測試套件的高階執行方法

根據資料提供者提供的資料進行資料驅動測試

允許使用者為測試方法設定執行優先順序

在執行多執行緒時提供安全的環境

支援各種工具和外掛的整合,如構建工具(Ant、Maven等)、整合開發環境(Eclipse)。

為使用者使用ReportNG生成報表提供了有效的方法

TestNG與Junit對比:

TestNG比JUnit有許多優點:

高階且簡單的註釋

可以設定執行模式

測試指令碼的併發執行

可以設定測試用例依賴項

在TestNG和JUnit中,註釋前面都有一個“@”符號。

二.在Eclipse中安裝TestNG

根據下面的步驟在eclipse上下載和安裝TestNG

步驟一:啟動eclipse IDE->點選選單欄上的幫助選項->在下拉框中選擇“Eclipse Marketplace..”選項

手把手教你如何使用TestNG框架建立Selenium指令碼?

步驟二 在搜尋框輸入關鍵詞“TestNG”,點選go 按鈕

手把手教你如何使用TestNG框架建立Selenium指令碼?

步驟三 當點選go 按鈕後,顯示匹配搜尋的結果,點選install 按鈕安裝“TestNG”

手把手教你如何使用TestNG框架建立Selenium指令碼?

步驟四 下載後會有一個彈出確認的彈窗,點選confirm確認

手把手教你如何使用TestNG框架建立Selenium指令碼?

步驟五 接下來,應用會彈出接受license框,然後點選“Finish”按鈕

步驟六 開始安裝,可以看見安裝進度條

手把手教你如何使用TestNG框架建立Selenium指令碼?

重啟 eclipse

重啟後,點選選單欄的“Window”選項下的“Preferences”來驗證TestNG的安裝。請參閱下圖

手把手教你如何使用TestNG框架建立Selenium指令碼?
手把手教你如何使用TestNG框架建立Selenium指令碼?

三.建立TestNG專案示例

步驟一 點選選單欄的File-> new->java Project

手把手教你如何使用TestNG框架建立Selenium指令碼?

步驟二 輸入專案名稱如“DemoTestNG”,點選”Next”按鈕,點選“Finish”按鈕,這樣java 專案建立成功

手把手教你如何使用TestNG框架建立Selenium指令碼?

步驟三 匯入TestNG 目錄到新建立的java 專案,單擊Build Path下的“Libraries”選項卡,點選“Add library”。

手把手教你如何使用TestNG框架建立Selenium指令碼?

步驟四 在彈出的對話方塊,選擇TestNG,點選“Next”按鈕,點選“完成”按鈕。

手把手教你如何使用TestNG框架建立Selenium指令碼?

現在TestNG已經加入到Java project 中,如下圖

手把手教你如何使用TestNG框架建立Selenium指令碼?

將下載的所有Selenium庫和jar新增到專案的構建路徑中。

四.建立TestNG類

建立示例指令碼

步驟一 展開“Demo TestNG”專案,選擇 “src”資料夾,右鍵單擊“src”包導航到New -> Other。

手把手教你如何使用TestNG框架建立Selenium指令碼?

步驟二 開啟TestNG選項,選擇TestNG類選項,點選next 選項

手把手教你如何使用TestNG框架建立Selenium指令碼?

步驟三 指定原始檔夾、包名和TestNG類名,然後單擊Finish按鈕。

手把手教你如何使用TestNG框架建立Selenium指令碼?

TestNG類將使用預設模式建立

手把手教你如何使用TestNG框架建立Selenium指令碼?

場景:

啟動瀏覽器,開啟“Gmail.com”。

驗證頁面標題並列印驗證結果。

輸入使用者名稱和密碼。

單擊登入按鈕。

關閉web瀏覽器。

程式碼解釋:

1)@Test是TestNG註釋之一。這個註釋讓程式知道標註為@Test的方法是一個測試方法。為了能夠使用不同的TestNG註釋,我們需要匯入包“import org.testng.annotations.*”。

2)使用TestNG建立測試指令碼時不需要main()方法。程式的執行是在註釋的基礎上完成的。

3)在語句中,我們在比較預期值和實際值時使用Assert類。Assert類用於執行各種驗證。為了能夠使用不同的類,我們需要匯入“import org.testng.Assert”。

五.執行TestNG指令碼

在程式碼區任意地方右鍵,或者java包上右鍵選擇“Run As”選項,點選“TestNG Test”執行

手把手教你如何使用TestNG框架建立Selenium指令碼?

TestNG結果在兩個視窗顯示

控制檯視窗

TestNG結果視窗

手把手教你如何使用TestNG框架建立Selenium指令碼?
手把手教你如何使用TestNG框架建立Selenium指令碼?

六.HTML報告

TestNG具有生成使用者可讀和可理解的HTML報告的強大功能。這些報告可以在任何瀏覽器中檢視,也可以使用Eclipse的內建瀏覽器支援來檢視。

生成步驟:

步驟1:執行新建立的TestNG類。右鍵單擊包含TestNG類的專案,選擇“Refresh”選項重新整理

步驟2:在“src”資料夾級別生成一個名為“test-output”的資料夾,展開“test-output”資料夾,用Eclipse瀏覽器開啟“email -report”, HTML檔案顯示最近執行的結果。

步驟3:HTML報告在eclipse環境中開啟,請參閱下圖

手把手教你如何使用TestNG框架建立Selenium指令碼?
手把手教你如何使用TestNG框架建立Selenium指令碼?

七.在TestNG中設定優先順序

示例:

八.程式碼走查

如果測試指令碼由多個測試方法組成,則可以使用TestNG註釋“@Test”並透過設定“priority”引數的值來設定執行優先順序和順序。

在上面的程式碼片段中,所有方法都用 @Test標註,優先順序設定為0、1和2。因此測試方法的執行順序為:

Method1

Method2

Method3

支援註解

TestNG和JUnit中提供了許多註釋。很小的區別在於TestNG為JUnit提供了一些更高階的註釋。

九.TestNG的註釋

以下是TestNG中最有用的註釋:

手把手教你如何使用TestNG框架建立Selenium指令碼?

十.總結

TestNG是一個有利於開發和測試使用的高階框架;

TestNG是一個開源框架,它是在Apache軟體許可下發布的,可以隨時下載;

TestNG因為具有高階的特性,所以被認為優於Junit;

TestNG是免費的,可以使用Eclipse Market很容易地安裝在Eclipse IDE中。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31407649/viewspace-2639106/,如需轉載,請註明出處,否則將追究法律責任。

相關文章