TestNG測試方法

2022-02-19 07:55:54 字數 1890 閱讀 1993

分組測試是testng中的乙個新的創新功能,使用標記在testng.xml檔案中指定分組。 它可以在標籤下找到。標籤中指定分組適用於其下的所有標籤。或者標註@test(groups = "組名")

@test(expectedexceptions = arithmeticexception.class)預期的異常測試

@test(timeout = 1000)超時測試

測試套件是用於測試軟體程式的行為或一組行為的測試用例的集合。 在testng中,我們無法在測試源**中定義乙個套件,但它可以由乙個xml檔案表示,因為套件是執行的功能。 它還允許靈活配置要執行的測試。 套件可以包含乙個或多個測試,並由標記定義。

testng.xml的根標記。 它描述了乙個測試套件,它又由幾個部分組成。

下表列出了接受的所有定義的合法屬性。  

屬性描述

name

套件的名稱,這是乙個強制屬性。

verbose

執行的級別或詳細程度。

parallel

testng是否執行不同的執行緒來執行這個套件。

thread-count

如果啟用並行模式(忽略其他方式),則要使用的執行緒數。

annotations

在測試中使用的注釋型別。

time-out

在本測試中的所有測試方法上使用的預設超時。

有時,我們可能需要以特定順序呼叫測試用例中的方法,或者可能希望在方法之間共享一些資料和狀態。 testng支援這種依賴關係,因為它支援在測試方法之間顯式依賴的宣告。 testng允許指定依賴關係: 在@test注釋中使用屬性dependsonmethods,或者 在@test注釋中使用屬性dependsongroups。 在testng中,我們使用dependonmethods和dependsongroups來實現依賴測試, 如果依賴方法失敗,則將跳過所有後續測試方法。

通過alwaysrun=「true」來配置,無論被依賴的方法是否出現異常,後續的方法都會被執行,

引數化測試允許開發人員使用不同的值一次又一次地執行相同的測試。

testng可以通過兩種不同的方式將引數直接傳遞給測試方法:

@parameters@dataprovider將引數傳遞給@test方法。

例如:

public class charutilstest ,,

,,,,

,,,,,};

}@test(dataprovider = "validdataprovider")

public void chartoasciitest(final char character, final int ascii)

@test(dataprovider = "validdataprovider")

public void asciitochartest(final char character, final int ascii)

}

@test(invocationcount =?)

這個invocationcount確定testng應該執行這個測試方法的次數。

@test(invocationcount = ?, threadpoolsize = ?)

threadpoolsize屬性告訴testng建立乙個執行緒池以通過多個執行緒執行測試方法。 使用執行緒池,會大大降低測試方法的執行時間。

TestNG套件測試

測試套件的測試是為了測試軟體程式的行為或一系列行為的情況下,是乙個集合。在testng,我們不能定義一套測試源 但它代表的套件是乙個xml檔案執行特徵。這也允許靈活的配置要執行的測試。套件可以包含乙個或多個測試和被定義由標籤。testng.xml中有根標籤。它描述了乙個測試套件,這反過來又是由多個區...

testng依賴測試

測試方法b的執行,依賴測試方法a,就叫做依賴測試。分為硬依賴測試和軟依賴測試。測試方法a先執行,若a執行成功,則b再執行。若a執行失敗,則b不執行。如何使用?test dependsonmethods alwaysrun true 測試方法a先執行,無論a是否執行成功,a執行後b都會執行。如何使用?...

TestNG分組測試

分為方法的分組和類的分組 groupsonmethod類 package com.janson.groups import org.testng.annotations.test public class groupsonmethod test groups server public void s...