このセクションでは、SOAtest のテスト コンフィギュレーションの設定について説明します。

このセクションの内容:


テスト コンフィギュレーションの設定と共有に関連する全般的な操作方法は、Parasoft Test ファミリー全体で統一されています。詳細については、「テスト コンフィギュレーションとルールの設定」 を参照してください。

[スコープ] タブ: テスト対象のコードを定義する

ソース コードの静的解析のみ。

SOAtest のテストでは、テスト コンフィギュレーション のスコープ基準を満たす、選択されたリソース中のすべてのコードに対して、指定のアクションが実行されます。デフォルトでは、 テスト コンフィギュレーションの実行時に選択されていたリソース中のすべてのコードがチェックされます。ただし、[スコープ] タブを使って以下のような制限をかけることもできます。

なお、一部のファイル フィルターと行フィルターは、サポート対象のソース管理システムで管理されているプロジェクトにだけ適用されます。

[スコープ] タブには以下の設定があります。


ヒント

  • Perl 形式の式を使用できます。
  • 以下のワイルド カードをサポートします。
    • * は、スラッシュ (/) を除く 0 個以上の文字と一致します。
    • ?   は、スラッシュ (/) を除いた任意の 1 個の文字と一致します。
    • ** は、スラッシュ (/) も含めて 0 個以上の文字と一致します。** を使用すると、パス要素を指定できます。
  • 以下の要素の例がデフォルトでコード レビューの設定に追加されています。
    • 拒否されるワイルドカードのサンプル リストに **/bin/**/*.properties が追加されています。
    • 拒否される正規表現のリストに (.*?/(bin|obj)(/x86|/x64){0,1}/(Debug|Release)/.*?\\.(dll|exe|pdb))$ が追加されています。
  • 正規表現を使って「差分」を表すことができます。たとえば、TODO タグを追加、削除、変更したソース コードだけをフラグする場合、[差分] フィールドに次のように指定します。
    .*TODO.*

基本的なファイル マスクとして以下があります。

  • *.java, *.xml, *.properties
  • *.c, *.cpp, *.h, *.cc, *.hpp, makefile, .project, .classpath
  • *.c, *.cpp, *.h, *.cc, *.hpp, makefile, *.sln, *.prj, *.res
  • *.cs, *.vb, *.sln, *.prj, *.resx

bank または customer というフォルダーをパスに含むすべてのファイルを含めるには、次のように指定します。 

  • **/bank/**, **/customer/**

bank で始まるフォルダー、 customer を含むフォルダー、および invoice で終わるフォルダーをパスに含むすべてのファイルを含めるには、次のように指定します。 

  • **/bank*/**, **/*customer*/**, **/*invoice/**

1) 名前が "Test" で開始する 2) 任意のプロジェクトの src/test ディレクトリ内にある"security" サブ フォルダー中にある、という条件を満たす全 .java ファイルを含めるには、次のように指定します。

**/src/test/**/security/Test*.java 

1) ATM ソリューションにある 2) ATMLib プロジェクトにある 3) ComanyTests サブフォルダー内にある 4) "Test" で名前が開始するという条件を満たす全 .cs ファイルを含めるには、次のように指定します。

ATM/ATMLib/CompanyTests/**/Test*.cs 



コードの作成者情報と最終変更日は、[スコープと作成者] の設定によって決まります。詳細については「タスクの割り当てとコード作成者の設定」を参照してください。

[静的] タブ: 静的解析の方法を定義する

テストの実行中、SOAtest はそのテストが使用するテスト コンフィギュレーションのパラメーターに基づいて静的解析を実行します。 

[静的] タブには以下の設定があります。


  • ルール ID の後に続く数字は、ルールの重要度レベルを表します。重要度レベルは、そのルールの違反が深刻な構造上の欠陥 (パフォーマンスの低下やセキュリティ脆弱性などの原因となる欠陥) を引き起こす可能性を表します 。レベル 1 からレベル 5 までの 5 段階のレベルがあります。レベル 1 が最も違反の深刻度が高いレベルです。
    • 最高 - レベル 1
    • 高 - レベル 2
    • 中 - レベル 3
    • 低 - レベル 4
    • 最低 - レベル 5
  • SOAtest に付属の静的解析ルールの詳細については、[ヘルプ] メニューの [ヘルプ目次] をクリックして『Parasoft SOAtest 静的解析ルール』ブックを参照してください。
  • テスト コンフィギュレーションで有効化されているすべての静的解析ルールのリストを作成するには、次の操作を行います。
    1. [Parasoft] メニューの [テスト コンフィギュレーション]をクリッ クして、テスト コンフィギュレーション パネルを開きます。
    2. ルール リストを作成するユーザー定義テスト コンフィギュレーションを選択します。
    3. [静的] タブをクリックします。
    4. [有効なルールの一覧] ボタンをクリックします。


[実行] タブ: テストの実行方法を定義する

テストの実行中、SOAtest は [実行] タブで定義されたパラメーターに基づいてテスト ケースを実行します。どのレベルの実行でも、最上位レベルの [テスト実行を有効にする] オプションを必ず有効にしなければなりません。

[機能性] タブ

[実行] > [機能性] タブには、次の設定があります。

[セキュリティ] タブ

[実行] > [セキュリティ] タブでは、侵入テストの設定を行うことができます。詳細については「侵入テスト」を参照してください。

[実行時エラー検出] タブ

[実行] > [実行時エラー検出] タブでは、実行時エラーの検出を設定することができます。詳細については「実行時エラー検出の実施」を参照してください。

[変更影響度] タブ

[実行] > [変更影響度] タブでは、テストの実行中に変更影響度分析を実行するかどうかを指定できます。詳細については、「変更アドバイザーでメッセージを更新」 を参照してください。

[API カバレッジ] タブ

[実行] > [API カバレッジ] タブには、テストの実行中に API カバレッジを計測するためのオプションがあります。詳細については「API カバレッジ」を参照してください。

[アプリケーション カバレッジ] タブ

[実行] > [アプリケーション カバレッジ] タブには、アプリケーション カバレッジのデータを収集するためのオプションがあります。SOAtest のテストがどの程度コード カバレッジを達成したかが可視化されます。詳細については「アプリケーション カバレッジ」を参照してください。

[共通] タブ: 複数の解析タイプに影響する共通オプションを定義する  

[共通] タブは、複数の解析タイプに影響するアクションのテスト設定をコントロールします。

[共通] タブには以下の設定があります。

[コード レビュー] タブ: コード レビューのオプションを定義する

[コード レビュー] タブには、ピア レビュー プロセスの準備、通知、記録を自動化するための設定があります。これは、組織の品質ポリシーのコンテキストで重要な SDLC 成果物 (ソース ファイル、テスト、その他) を評価するために使用できます。

コード レビューの設定と [コード レビュー] タブのオプションの詳細については、「コード レビュー」を参照してください。 

[ゴール] タブ: エラー レポートと解決ターゲットを定義する

チーム マネージャーは、「1 人の開発者につき 1 日にレポートされる違反を 25 個までにする」といったレポートの制限を指定したり、「すべての静的解析違反を 2 ヶ月で修正しなければならない」といった品質ゴールを指定することができます。指定された条件に従って、SOAtest は各開発者が毎日実行するテスト タスクのサブセットを選択します。これらのゴールは [ゴール] タブで指定します。ゴールへの到達度をレポートでモニタリングできます。

別の方法として、「タスク ゴールの設定」にあるようにグローバル チーム ゴールを設定できます。グローバル チーム ゴールは、複数のテスト コンフィギュレーション間で共有できるほか、複数の Parasoft テスト ツールの間でさえも共有できます。この設定には Team Server と Parasoft Test Automation ライセンスが必要です。グローバル チーム ゴールを設定した場合、テスト コンフィギュレーションの [ゴール] タブは使用不可になります。

[ゴール] タブには以下の設定があります。

[静的] タブ

[例外] タブ