作成したアプリケーションのテスト方法を、以下の内容で説明します。
サーバアプリケーションのテスト方法
クライアントアプリケーションのテスト方法
スナップショットによるテスト支援
運用環境への移行
運用環境におけるテスト
サーバアプリケーションのテスト方法
サーバアプリケーションのテストを行う場合、実際にクライアントアプリケーションと結合して行います。このとき、サーバアプリケーションをデバッガ配下で動作させることで、サーバアプリケーションが正しく作成されているか確認できます。
サーバアプリケーションのテストは、Solarisの場合だけが可能です。
デバッガと連携するには、アプリケーションをdbx配下などで動かせるようにする必要があります。デバッガと連携するときの動作の概要と、サーバアプリケーションをデバッガ配下でテストする場合の手順を、以下に示します。
テストを行うサーバアプリケーションを、-gオプションおよび-xsオプションを指定してコンパイルします。コンパイル方法の詳細については、関連するマニュアルを参照してください。
テスト用モジュールのコンパイル例を以下に示します。
%CC -c -g -xs -D_REENTRANT -I/opt/FSUNod/include -I/opt/FSUNtd/include tdsample1_s.C |
テストを行うサーバアプリケーションのワークユニット定義を作成し、tdstartwuコマンドでデバッグオプション-dを指定してワークユニットを起動します。-dオプションを指定してワークユニットを起動した場合、ワークユニットの動作環境まで作成し、サーバアプリケーションプロセスを起動せずにコマンドは復帰します。tdstartwuコマンドの詳細については“リファレンスマニュアル(コマンド編)”を参照してください。
デバッグ用のワークユニットの起動例を、以下に示します。
%tdstartwu -d TDSAMPLE1 |
dbxコマンドなどをサーバアプリケーションを指定して起動することにより、サーバアプリケーションをそのデバッガ配下で起動します。サーバアプリケーションプロセスを起動する際のdbxコマンドの指定方法を以下に示します。
%dbx サーバアプリケーション |
デバッガ配下でサーバアプリケーションを起動後、デバッガ画面でサーバアプリケーションの実行を行ってください。サーバアプリケーションの実行方法を以下に示します。
(dbx)run 業務システム名 ワークユニット名 オブジェクト名 T |
デフォルトシステムの場合は、"td001"を指定します。拡張システムの場合は、システム名を設定します。
本サーバアプリケーションが動作するワークユニット名を指定します。
ワークユニット定義で指定した、本サーバアプリケーションのオブジェクト名を指定します。
“T”を指定します。
サーバアプリケーションの実行後、クライアントアプリケーションからサーバアプリケーションを呼び出し、処理を実行することで、サーバアプリケーションの動作状態をデバッガから確認することができます。これにより、アプリケーションを実行することができ、ステップ単位でデバッグすることができます。なお、C++プログラムのデバッグ方法の詳細については、関連するマニュアルを参照してください。
アプリケーションのテストを終了する場合は、以下の手順で行います。
サーバアプリケーションのデバッグを終了し、クライアントアプリケーションからの要求待ちの状態にします。
ワークユニットを停止します。
デバッガにより、サーバアプリケーションをデバッグする場合の注意事項について示します。
サーバアプリケーションをデバッガ配下で起動しデバッグを行っているときは、再デバッグ(rerun)を行わないでください。再デバッグを行う場合は一度デバッガを停止し、その後再起動してください。
サーバアプリケーションのデバッグ中にワークユニットを停止しないでください。必ずサーバアプリケーションが復帰し、要求待ちの状態になっている状態でワークユニットを停止してください。
ワークユニット定義におけるプロセス多重度には必ず1を指定してください。
1つのワークユニットに対しては、デバッガは1つだけ起動するようにしてください。
デバッガを終了する場合は、必ずデバッガによる実行状態が完了している状態で行ってください。
前出口プログラム、および後出口プログラムのデバッグ中は、ほかのワークユニットの起動処理または停止処理が保留されます。
デバッガによるステップ実行中でも時間監視は行われますので、ワークユニット定義で時間監視を行わないか、またはデバッグに十分な時間を指定してください。
デバッガを使用している場合は、tdstopwuコマンドで-cオプション、およびisstopコマンドで-c、-fおよび-s(Windows版)オプションは投入できません。
ワークユニット定義のアプリケーション使用ライブラリパス、およびアプリケーションライブラリパスに指定されているパスを環境変数(LD_LIBRARY_PATH)に設定し、デバッガを起動してください。
クライアントアプリケーションのテスト方法
クライアントアプリケーションのテスト方法は、クライアントアプリケーションを動作させるオペレーティングシステムやミドルウェアによって異なります。お使いのオペレーティングシステムやミドルウェアごとに推奨される方法でテストを行ってください。
スナップショットを使用して、クライアントからの要求に対する入出力情報をワークユニット単位に取得することにより、アプリケーションのデバッグを行うことができます。
詳細は、“第7章 スナップショット機能”を参照してください。
運用環境への移行
開発環境でテストした資材を運用環境へ移行するための作業手順と、運用環境でのテスト方法について説明します。
クライアント資材は、サーバ資材を移行してサーバアプリケーションがコンパイルされるまでに移行してください。
サーバ資材を運用環境に移行する手順について、以下に示します。
開発環境のInterstageシステムを停止します。
開発環境からサーバアプリケーションのプログラムソースを運用環境に複写します。
開発環境からIDLファイル、ワークユニット定義ファイルを運用環境に複写します。
3.で複写したIDLファイルをもとに、tdcコマンドを実行し、スタブファイル、スケルトンファイルを作成します。
運用環境のInterstageシステムの停止
2.で複写したサーバアプリケーションプログラムソースと4.で作成したスケルトンファイルにより、サーバアプリケーションを作成します。
ワークユニット定義の“ネーミングサービスの登録形態”が“MANUAL”の場合、オブジェクトリファレンスを登録します。
3.で複写したワークユニット定義を登録します。
運用環境のInterstageシステムを起動します。
運用環境のワークユニットを起動します。
運用環境におけるテスト
開発環境では各モジュールの単体テストを行いますが、運用環境ではシステム全体として以下に示すテストが必要です。
システム負荷テスト
業務に沿った運用テスト
業務に則した性能テスト
それぞれのテスト方法について、以下に示します。
システム負荷テストは業務を遂行するために、システム上のすべてのコンポーネントを含めたテストを実施します。システムの負荷をあげるためには、システムへのデータ入力の頻度(呼量と呼びます)をあげると、実施できます。たとえば、多数のCORBAクライアントからの入力の場合、CORBAクライアントを高速なマシン上で動作させると、呼量が増加し、負荷があげられます。
また、Web連携の負荷をあげるときは、WebStoneなどをUNIXサーバに設定し、同様に呼量を増加させることができます。
業務に沿った運用テストは、実際の業務を想定したテストを実施し、システムとして運用に問題がないかを確認します。したがって、システムで利用する製品および業務アプリケーションすべてを動作させます。たとえば、受注業務の運用テストを実施する場合、受注業務で利用する全製品とアプリケーションを動作させて、受注業務の開始/終了、データ入力とその処理などを実施します。
性能テストは、業務運用中の性能について測定し、問題がないかを確認するテストです。