TestNG
詳細情報
- 作成者
- Cédric Beust
- 発売
- 2004
- 種別
- テストフレームワーク
- ライセンス
- Apache 2.0
- 公式サイト
- testng.org
アノテーション、グループ、並列実行を持ち込み、JUnitに追随を迫ったJava用テストフレームワーク。
Cédric Beustが2004年に公開した。JUnit 3への批判から生まれたもので、JUnit 3ではテストが「test」で始まるメソッド名で識別され、準備処理はすべて単一の setUp() に押し込まれていた。TestNGはJava 5の新機能であるアノテーション(@Test、@BeforeMethod、@BeforeClass、@BeforeSuite)を使い、各処理の実行時点を細かく制御できるようにした。
ほかにも、smokeのようなタグ付きテストだけを実行するグループ、テスト間の依存関係の宣言、パラメータ化のためのデータプロバイダ、組み込みの並列実行が革新的だった。並列実行は遅いSeleniumスイートで人気を得た。JUnit 4は翌年にアノテーションの仕組みを取り入れ、JUnit 5が残りを引き継いだ。TestNGは今もレガシーなテスト自動化に残っている。