Automakeは二つの形式のテストスイートをサポートします.
変数TESTSが定義されている場合,その値はテストを行なうために実行す
るプログラムのリストになります.プログラムは,派生するオブジェクトあるい
はソースオブジェクトです.生成される規則はsrcdirと`.'の両方
で探します.データファイルを必要としているプログラムは,(環境変数とmake
変数の両方の)srcdirでそれらを探すので,それらは,別々のディレクト
リでビルドするとき(see section `Build Directories' in The Autoconf Manual),特にdistcheckターゲットに対して
動作します(see section 配布物に含まれるもの).
失敗の数は実行後に出力されます.所定のテストプログラムが77のステータスで 終了する場合,その結果は最終的なカウントで無視されます.この機能で,非移 植性のテストが意味をなさない環境で無視することができます.
変数TESTS_ENVIRONMENTは,テストの実行に対して環境変数を設定するた
めに使用することが可能です.環境変数srcdirは,規則内に設定されま
す.すべてのテストプログラムがスクリプトの場合,TESTS_ENVIRONMENT
をシェルの呼び出しに設定することが可能です(例えば`$(SHELL) -x').こ
れはテストをデバッグするときに役立つはずです.
変数XFAIL_TESTSを,失敗を期待するテストのリスト(通常は
TESTSのサブセット)に定義してもかまいません.これは,それらのテス
トの結果を反転します.
Automakeは,TESTSでリストアップされているそれぞれのプログラムが,
テストを実行する前にビルドされることを確実にします.ソースと派生するプロ
グラムをTESTSにリストアップすることが可能です.例えば,テストとし
てCプログラムを実行したいかもしれません.こうするためには,その名前を
TESTSとcheck_PROGRAMSにもリストアップし,それを他のプログ
ラムとして指定します.
`dejagnu'が
AUTOMAKE_OPTIONSにある場合,dejagnuベースのテストスイート
が想定されます.変数DEJATOOLは,runtestの呼び出しに
--tool引数として,一度に渡される名前のリストです.それはパッケー
ジの名前をデフォルトとします.
変数RUNTESTDEFAULTFLAGSは,デフォルトでdejagnuに渡される
--toolと--srcdirフラグを保持します.必要な場合は,これで優
先することが可能です.
変数EXPECTとRUNTESTで,プロジェクト特有の値を提供するため
に優先することが可能です.例えば,コンパイラツールチェインをテストする場
合,デフォルト値はホストとターゲットの名前を考慮しないので,こうする必要
があります.
変数RUNTESTFLAGSの内容は,runtestの呼び出しに渡されます.
これは,"ユーザ変数"(see section ユーザに対して予約されている変数)として扱われます.
`Makefile.am'にruntestフラグを設定する必要がある場合,代わり
にAM_RUNTESTFLAGSを使用することが可能です.
Automakeは,./configureで検出した様々な変数を定義するローカルな
`site.exp'ファイルを生成するための規則を生成します.このファイルは,
自動的にDejaGnuで読み込まれます.パッケージユーザがテストスイートを調整
するためにこのファイルを編集することは問題ありません.しかし,テストスイー
トの著者が新しい変数を定義する場所に書くものではありません.これは,実際
のテストスイートのコードのどこかでなされるべきです.特に,
`site.exp'を配布すべきではありません.
どちらの状況でも,テストは`make check'で実行されます.
installcheckターゲットは,パッケージがインストールされた後でテス
トを実行する方法をユーザが利用可能にします.installcheck-localター
ゲットを書くことで,これをテストに追加することが可能です.
Go to the first, previous, next, last section, table of contents.