以下は様々なプログラミング言語 のためのコード駆動型のユニット・テスト ・フレームワークの一覧である。全てではないが、これらの幾つかはxUnit に基づいている。
表の各列の説明 (分類)
名前 : この列はフレームワークの名前及び、Wikipedia内にその項目があればそれへのリンクを含む。
xUnit : この列はフレームワークがxUnit 型のフレームワークであるかどうかを示す。
TAP : この列はフレームワークがTAP 準拠のテスト・ハーネス を出力できるかどうかを示す。
ジェネレータ : この列はフレームワークがデータ・ジェネレータ をサポートするかどうかを示す。データ・ジェネレータはあるテストの入力データを自動的に生成し、生成した各データについてそのテストを実行する。
フィクスチャ : この列はフレームワークがテスト毎のフィクスチャをサポートするかどうかを示す。テスト毎のフィクスチャは個々のテストに対して環境の設定が行えるようにする。
グループ・フィクスチャ : この列はフレームワークがグループ・フィクスチャをサポートするかどうかを示す。グループ・フィクスチャは一群のテスト全体に対して環境の設定が行えるようにする。
その他 : その他の列はフレームワークが特定の言語や特定のツールの機能を利用している、または利用可能であることを示す。
備考 : その他特記すべき事項。
言語別一覧
ABAP
ActionScript / Adobe Flex
名前
xUnit
ウェブサイト
備考
FlexUnit
[2]
FlexUnit 4
Yes
[3]
Flex 2,3 及び 4 と ActionScript 3 のプロジェクト向けのメタデータ駆動ユニットテスト。
Reflex Unit
[4]
Flex 2及び3向けのメタデータ駆動ユニットテスト。
FUnit
Yes
[5]
Flex向けのメタデータ駆動ユニットテスト。
ASTUce
Yes
[6]
ActionScript 3 (JS, AS1, AS2を含む)向けのユニットテスト、(OS X / Linux / Windowsでサポートされる)クロス・プラットフォーム実行可能ファイルをコマンドラインから実行することもできる。
AsUnit
[7]
Flash Player 6, 7, 8, 9 及び 10
dpUInt
[8]
Flex 2及び3向けのユニット・テスト及び結合テスト・フレームワーク。
Fluint
[9]
Flex 2及び3向けのユニット・テスト及び結合テスト・フレームワーク。
mojotest
Yes
[10]
(開発中) ActionScript 3と Flash Player 10向けのユニット・テスト。
Ada
AppleScript
名前
xUnit
ウェブサイト
備考
ASUnit
Yes
[16]
AppleScript向けのテスト・フレームワークで、SUnit、ASTest及びPythonユニット・テストの影響を受けている。
ASTest
Yes
[17]
AppleScript向けユニット・テスト・フレームワーク
ASP
BPEL
C
C#
後述の .NETプログラミング言語 の節を参照。
C++
名前
xUnit
フィクスチャ
グループ・フィクスチャ
ジェネレータ
モック
例外
マクロ
テンプレート
グループ化
ウェブサイト
備考
Aeryn
No
Yes
Yes
No
No
Yes
Yes
Yes
Yes
[55]
API Sanity Autotest
Yes
Yes (専用 データ型)
Yes (専用 データ型)
Yes
[56]
Unix類似オペレーティング・システムにおけるC/C++共有ライブラリのAPIのためのユニット・テスト・ジェネレータ。オープンソース。
ATF
Yes
Yes
Yes
Yes
[57]
BSDライセンス。元々はNetBSDオペレーティング・システム向けに開発されたが、殆どのUnix類似プラットフォームで動作する。リリースの一部としてテストをインストールする能力がある。
Boost Test Library
No[ 1]
Yes[ 2]
Yes[ 3]
Yes
No
Yes
ユーザの決定に従う
Yes
Suites
[58]
Boost の一部
C++test
Yes
Yes
Yes
Yes
No
Yes
Yes
Yes
Yes
[59]
商用。ユニット・テスト生成・実行とともに業界標準のコード・カバレージのレポート作成機能を含む自動ソフトウェア品質向上ソリューション。
Cantata++
Yes
No
No
No
Yes
Yes
Yes
[60]
商用。テスト中のソフトウェアの関数呼び出しを修正が可能(例:強制的にnew演算の返値をnull値にしたり例外を発生させたりするエラー条件の実現)。
CATCH
No
Yes
Yes
Yes
No
Yes
Yes
Yes
Yes
[61]
ヘッダ・ファイルのみからなり、外部に依存しない。記述したテストの自動登録、TDD 向け及びBDD 向け機能。
cfix
Yes
Yes
No
No
No
Yes
Yes
No
[62]
Windowsでの開発(Win32とNTカーネルモードの両方)に特化している。WinUnitと互換性がある。
Cput
Yes
Yes
Yes
Yes
Yes
Yes
No
Suites
[63]
ユニット・テストを作成・実行するための、ライブラリ及びMS Visual Studio用アドイン。オープンソース
CppTest
Yes
Yes
Suites
[64]
LGPL ライセンスでリリースされている。
CppUnit
Yes
Yes
Yes
No
No
Yes
Yes
No
Suites
[65]
CppUTest
Yes
Yes
Yes
No
No
No
Yes
No
Suites
[66]
利用の容易さ、及び組み込みプラットフォームで利用可能とするためC++の機能の利用を限定している。SymbianとIARに移植されている。
CppUnitLite
Yes
No
No
No
Yes
No
Suites
[67]
CUTE
Yes
Yes
No
No
No
Yes
Suites
[68]
CUTE (C++ Unit Testing Easier)はEclipse CDTに組み込み可能。インクルード文一つだけで継承不要。
cutee
No
No
No
Yes
[69]
CxxTest
Yes
Yes
Yes
No
Yes*
Optional
Yes
No
Suites
[70]
テスト登録のために簡易なC++パーサとジェネレータを利用する(Perl かPython が必要)。* グローバル関数のモックを生成するフレームワークを備えるが、オブジェクトのモックは生成しない。
FCTX
Yes
Yes
Yes
No
No
No
Yes
No
Yes
[71]
全てが1つのヘッダ・ファイルに納められた、高速で完全なユニット・テスト・フレームワーク。1ステップで宣言と関数の記述が可能。環境依存なし。クロス・プラットフォーム。
Fructose
No
Yes
No
No
No
Yes
Yes
Yes
No
[72]
単純なユニット・テスト・フレームワーク。Accu を参照。
Google C++ Mocking Framework
Yes
No
Yes
Yes
[73]
Google C++ Testing Framework
Yes
Yes
Yes
Yes
Yes
Yes
[74]
自動テスト発見、豊富なアサーション、ユーザー定義のアサーション、deathテスト、致命的あるいは非致命的失敗、様々なテスト実行オプション、XML形式のテスト・レポート生成をサポートする。
hestia
No
Yes
Yes
No
No
Yes
Yes
No
Suites
[75]
オープン・ソース。サーバ、ライブラリ、アプリケーション、さらには組み込みソフトウェアをもテスト可能。
Igloo
Yes (Contexts)
No
No
No
Yes
Yes
Yes
Yes (nested contexts)
[76]
C++でBDD スタイルのユニット・テストを行う。
mock++ /mockcpp
Yes
Yes
No
Yes
Yes
Yes
Yes
Suites
[77]
C++向けの簡単なテスト・フレームワーク(cmakeが必要)。
mockitopp
Yes
[78]
mockito のC++実装
mockpp
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Suites
[79]
GoogleにホストされるC++のモック・フレームワーク。
NanoCppUnit
No
Yes
Yes
No
No
No
Yes
Yes
Suites
[80]
C++におけるTDD の概念実証 コード。
OAKUT
No
No
Yes
Yes (XML)
No
Yes
Yes
Yes
XML
[81]
共有ライブラリ/DLLを使用する。
QuickTest
No
No
No
No
No
Yes
Yes
Yes
No
[82]
ShortCUT
No
Yes
[83]
Symbian OS Unit
Yes
[84]
CxxTest に基づく。
TBrun
[85]
商用。
Tessy
[86]
商用。
TEST-DOG
Yes
Yes
Yes
Yes
No
Yes
Yes
No
Suites
[87]
オープン・ソース。
Test soon
No
Yes
Yes
Yes
No
自動検出
Yes
Yes
マクロ (名前空間)
[88]
マクロで組まれた複雑な論理構造(意図的なもの)。
Testwell CTA++
Yes
No
No
Yes
No
Yes
Yes
Yes
[89]
商用。
TUT
No
No
Yes
No
No
Yes
Yes
Yes
Templates
[90]
テンプレートに基づく。自動テスト発見/登録、カスタマイズ可能なレポート生成プロセス、多様なテスト実行オプション。Windows CE上へ容易に適用可能。
Unit++
[91]
UnitTest
Yes
Yes
No
No
No
Yes
Yes
No
No
[92]
UnitTest++
No
Yes
Yes
No
Yes
Yes
Yes
Suites
[93]
フリーソフトウェア。単純さ、可搬性、速度、資源消費の少なさを特徴とする。
UquoniTest
Yes
Yes
Yes
No
Yes
Yes
Yes
Yes
Yes
[94]
商用。テスト・ディレクトリ(再利用可能)を簡単に作成可能、アサーションを組み合わせるための豊富な論理演算、他の機能を有する。
VectorCAST/C++
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
[95]
商用。自動化されたユニット・テスト及び結合テストとコード・カバレッジ 検査
Visual Assert
Yes
Yes
No
No
No
Yes
Yes
No
[96]
Visual Studio 向けのユニット・テスト・アドイン。cfix テスト・フレームワークに基づく。
WinUnit
[97]
.NET開発者よりはC/C++向けに焦点を合わせている。
xTests
Yes
Yes
[98]
STLSoft C & C++ Libraries に依存。
Yaktest
[99]
名前
xUnit
フィクスチャ
グループ・フィクスチャ
ジェネレータ
モック
例外
マクロ
テンプレート
グループ化
ウェブサイト
備考
Cg
CFML (ColdFusion)
Clojure
COBOL
Common Lisp
Curl
Delphi
Emacs Lisp
Erlang
Fortran
名前
xUnit
フィクスチャ
グループ・フィクスチャ
ジェネレータ
ウェブサイト
備考
FUnit
Yes
Yes
Yes
No
[124]
アサーション及び決まり文句等最小限の拡張をFortranに施し、Rubyで前処理してFortranコードを生成し、コンパイル・実行する。
FRUIT
Yes
Yes
Yes
Yes
[125]
コードはFortran 95、ジェネレータはRuby で書かれている。
Ftnunit
[126]
pFUnit
[127]
ObjexxFTK:UnitTest
[128]
ユーザはFortranのテストコードを書くだけで、Pythonスクリプトが自動的にすべてのテストを発見しFortranで記述されたテスト・ドライバを生成するので容易に利用可能。F77からF2003までをサポートする。アサーション・サポート及び文字列、配列など有用なライブラリ群が含まれる。
Lutin77
[129]
FORTRAN77のユニットテストを実行する。大変軽量(コードは97行)でCコンパイラしか必要としない。
F#
Groovy
Genexus
Haskell
HLSL
ITT IDL
インターネット
Java
JavaScript
Lasso
LaTeX
LabVIEW
名前
xUnit
ウェブサイト
備考
LabVIEW Unit Test Framework
No
LabVIEWのVI向けテスト・ハーネスを自動生成。
VI Tester
Yes
[196]
xUnitフレームワークのLabVIEWネイティブでオブジェクト指向な実装。ユニット・テストはLabVIEWのVIとして記述。
Lua
MATLAB
MySQL
.NET programming languages
Objective-C
OCaml
Object Pascal (Free Pascal)
PegaRULES Process Commander
Perl
PHP
PL/SQL
PostgreSQL
PowerBuilder
Progress 4GL
Prolog
Python
R
REALbasic
Rebol
RPG
Ruby
SAS
Scala
Scheme
シェル
Simulink
Smalltalk
SQL
TargetLink
Tcl
TinyOS/nesC
Transact-SQL
Visual FoxPro
Visual Basic (VB6)
For unit testing frameworks for VB.NET, see the .NET programming languages section.
Visual Lisp
XML
名前
xUnit
ウェブサイト
備考
XUnit
[312]
以下をテストする:
ネイティブなXML プログラム
XSLT の個々の テンプレート
XMLデータを取り扱うJavaプログラム
WUnit
[313]
以下のようなWebアプリケーションをテストする:
テストがXML/XPath (XUnit) で記述されている
AJAXアプリケーションもサポート
Javaサーブレットとして作られたサーバーサイドの機能もテスト可能(例えば、HTTPリクエストを送信することなくユーザーセッションのサーバー側にきちんとオブジェクトを格納し、その後HTTPで取得するそのページの描画が可能)
SOAtest
No
[314]
商用。Parasoft社製。セキュアで信頼性が高く標準に準拠したビジネスプロセス実現のための完全なソフトウェア・ライフサイクル品質管理プラットフォーム。
XSLT
その他
脚注
関連項目
ユニット・テスト(単体テスト)一般:
ユニット・テストに対するエクストリーム・プログラミング手法:
その他の関連項目:
外部リンク