by 笠井 峰生
+ Hippo2000(2002/5/15)
Test::Unitの日本語訳なのです。
元の日本語部分は笠井さんが作成され、私(川合孝典)がHTML形式に変更しました。作者はChristian Lemburgさんです。笠井さんがメールで許可をいただきました。
なお現在、Test::UnitのメンテナンスそのものはSourceForge上のプロジェクトに移っているとのことです。詳しくはこちらをご覧ください: PerlUnit: http://perlunit.sourceforge.net/
なお内容等が間違っていたら修正します。ご連絡ください。
Test::Unit - 手続き型 Unit Test インターフェース
use Test::Unit;
# テストされるコードをかきます。
sub foo { return 23 };
sub bar { return 42 };
# テストを定義します。
sub test_foo { assert(foo() == 23, "メッセージを出力します。"); }
sub test_bar { assert(bar() == 42, "テストに失敗したら出力されます。"); }
# set_up と tear_down はテストに必要なリソースの
# 準備と解放に利用されます。
sub set_up { print "テストを開始します。\n"; }
sub tear_down { print "テストを終了します。\n"; }
# テストを実行します。
create_suite();
run_suite();
Test::Unit は、Kent Beck と Erich Gamma による Java の JUnit testing
framework に由来する、Perlのための testing framework への手続き型インターフェースです。JUnitがオブジェクト指向開発のパラダイム
(テストの継承のサポートなど)にのっとったUnit testingを意図しているのに対し、Test::Unit は、スクリプトを開発する際に適したよりシンプルな framework に対するインターフェースを提供します。Test::Unitは、Unit testing に対するオブジェクト指向的なアプローチをあまりサポートするものではありません。 - オブジェクト指向的なTesting frameworkについては、Test::Unit::TestCase のマニュアルを一度ご覧ください。
Test::Unitを使用すると、名前空間で export された以下のルーチンにより指示されたユニット(スクリプト、モジュール、その他なんでも)をテストすることができます。:
create_suite()
run_suite()
add_suite()
便利なように、"create_suite()" は指定されたパッケージの test suite を自動的 に作成します。このメソッドは、簡単にテストできるように、パッケージ内の "test" からはじまるサブルーチンをひろいだし、ひとつの TestSuite オブジェク トを作成します。もし、"create_suite()" に対し、パッケージ名を指定しなかっ た場合は、現在のパッケージが既定値となります。
テストの出力は、ステータス行、(テストが成功した場合には "." 、失敗した場合には "F" を、進行状況に応じて表示します。)、結果行("OK" または"!!!FAILURES!!!")、そして、おそらく失敗したテストの多くの詳細なエラーメッセージからなります。
Test::Unit は、簡単で便利なインターフェースを意図しています。もし、もっと豊富な機能が必要であれば、Test::Unit::TestCase のマニュアルで解説されているオブジェクト指向的なアプローチを採用してください。
Copyright (c) 2000, 2001 Christian Lemburg, <lemburg@acm.org>.
All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
Thanks go to the other PerlUnit framework people: Brian Ewins, Cayte Lindner, J.E. Fritz, Zhon Johansen, Matthew Astley, Adam Spiers, Piers Cawley.
Thanks for patches and other contributions go to: David Esposito, Kevin Connor.
Test::Unit::TestCaseのマニュアル
手続き型のサンプルが、examples ディレクトリにあります
ご意見、ご質問はこちらの掲示板で受け付けています。
またメールは河馬屋(Nifty)にお願いします。