xUnit
概要
xUnitとは、プログラムの単体テスト(ユニットテスト)を行うためのソフトウェアおよびテストコードの記述体系を組み合わせたテストフレームワークの一つ。始祖の「SUnit」に似た設計や特徴を持つ様々なフレームワークの総称。テストを実行するためのツールやライブラリなどのプログラム群と、テストプログラムを記述するための構文規則などを組み合わせたものである。開発者は自分のプログラムを検証するテストを記述してツールに与えると、自動的にテストが実行され、結果が分かりやすく表示される。
テストを作成するには、実行時の前提条件を定義する「テストフィクスチャ」(test fixture)あるいは「テストコンテキスト」(text context)を定義し、実行するテストコードを記述する。同じフィクスチャ上のテスト群は「テストスイート」(test suite)としてまとめて管理され、一括して実施することができる。テスト対象には一定の記述形式で状態を出力する「アサーション」(assertion)を含めることができ、実行時の内部状態や振る舞いなどを確認することができる。
このような仕組みのテストフレームワークの始祖は1989年にケント・ベック(Kent Beck)氏がSmallTalk向けに発表した「SUnit」で、これに触発されて様々な言語向けに似た仕組みのフレームワーク群が開発されてきた。Java言語向けの「JUnit」、C言語向けの「CUnit」、Python向けの「PyUnit」などがあり、これらはSUnitにならって「言語名や略称+Unit」という名称であることから総称として「xUnit」が用いられる。
xUnit.net
.NET環境向けの単体テストフレームワークに「xUnit.net」があり、.NET関連の文脈ではこれを略して「xUnit」と表記・呼称することがある。
Microsoft .NET環境でソフトウェアを開発する際に用いるxUnit系のテストフレームワークの一つで、.NET Frameworkや.NET Core、Monoなどで利用できる。C#やVisual Basic、F#など.NET対応言語で開発したプログラムに対するテストを記述し、実行する環境を提供する。
.NET向けテストフレームワークの「NUnit」の開発者らが新たに開発したもので、.NET Foundationが開発を支援している。Apacheライセンスに基づいてオープンソースソフトウェアとして配布されている。米マイクロソフト(Microsoft)社も公式にサポートしており、Visual Studioに組み込んで使用することができる。