PostgreSQL
PrevChapter 26. Regression テストNext

Regression テストの流れ

各コマンドは、RedHat Linux version 4.2 上で bash シェルを使ってテスト されました。注意書きがある箇所を除いて、それらはほとんどのシステムで 動作するはずです。pstar といったコマンドは、各プラットフォームにおいてどんなオプションを使う のかにより恐ろしく変わります。これらのコマンドをタイプする前に、まず 常識を使いましょう

Postgres Regression 設定

Postgres を一からインストールしたり、 以前のリリースからのアップグレードをした場合は、以下のことを 行って下さい。

  1. regression テストをビルドします。以下のようにタイプして下さい。

        cd /usr/src/pgsql/src/test/regress
        gmake all

  2. もし以前に regression テストをしたことがある場合は、

        cd /usr/src/pgsql/src/test/regress
        make clean
    のようタイプして、作業ディレクトリをクリアします。

  3. /usr/src/pgsql/src/test/regress/README ファイルには、regression テストを実行したり結果を解析したりするための方法に関する詳細が 記述されています。以下に概要を述べます。

    まだ postmaster が動いていない場合は、どこかのウィンドウで

        postmaster
    とタイプして postmaster を開始させるか、
        cd
        nohup postmaster > regress.log 2>&1 &
    のようにして postmaster デーモンをバックグラウンドで起動します。

    postmaster は、あなたの Postgres スーパー ユーザのアカウント(一般的には postgres アカウント)で実行するように してください。

    NOTE: postmaster を root アカウントから起動 しないようにして下さい。

  4. regression テストを実行します。

        cd /usr/src/pgsql/src/test/regress
        gmake runtest
    のようにタイプして下さい。

    初回のテストにおいては、"gmake clean" をタイプする必要はありません。

  5. テストにパスしたり失敗したりしたステートメントの情報が画面(および ./regress.out ファイル)に表示されるはずです。いくつかのテストが 失敗することがあるのは普通だということに注意しておいて下さい。 テストに失敗したものは、diff を使って ./results と ./expected ディレクトリにあるファイルを比較します。float8 が失敗した場合は、 以下のようにタイプします。

        cd /usr/src/pgsql/src/test/regress
        diff -w expected/float8.out results

  6. テストを実行した後は、

        destroydb regression
        cd /usr/src/pgsql/src/test/regress
        gmake clean
    とタイプします。


PrevHomeNext
ディレクトリ構成UpRegression 結果の解析