このセクションでは、テストコンフィギュレーション、ルールファイル、ルールマッピングファ イルをチーム内で共有する方法について説明します。

このセクションの内容:

テストコンフィギュレーション-概要

 テストコンフィギュレーションとは

C++test のすべてのテストは、GUI からのテストでもコマンドラインイン ターフェイスからのテストでも、テスト コンフィギュレーションに基づいて実行されます。テスト コンフィギュレーションは、テストのスコープ、使用する静的解析ルール、テストの生成/ 実行など のオプションを定義したものです。つまり、テストの実行方法を変更するにはテストコンフィギュ レーションの設定を変更する必要があります。

C++test には、よく使用されるテストシナリオを定義したビルトインテストコンフィ ギュレーションが用意されています。しかし、開発プロジェクトやチームの優先順位は異なるため、 ユーザー定義のテストコンフィギュレーションを作成したい場合もあります。

C++test に付属するビルトインテスト コンフィギュレーションは、直接変更して保存す ることはできません。推奨する方法は、ビルトインテストコンフィギュレーションを複製し、複製 したテストコンフィギュレーションをチームのニーズや環境に合わせて変更してユーザー定義テス トコンフィギュレーションを作成することです。また、ユーザー定義テストコンフィギュレーショ ンはまったく新規に作成することもできます。

C++test が Development Testing Platform に接続されている場合は、DTP サーバーで作成され、保存されているテスト コンフィギュレーションを使用して解析を実行することができます。DTP のコンフィギュレーションは IDE では変更できず、DTP で設定します。

最も頻繁に使用する予定のテストコンフィギュレーションは、「お気に入りテストコンフィギュレー ション」に設定します。「お気に入り」として設定すれば、[Parasoft] メニュー、ツールバーの [ テ スト] ボタン、コマンドラインインターフェイスから簡単に目的のテストコンフィギュレーション を実行することができます。

ユーザー定義テストコンフィギュレーションを作成する

ユーザー定義テストコンフィギュレーションを作成するには、次の操作を行います。

  1. [Parasoft] メニューの [ テストコンフィギュレーション] をクリックします。
  2. 利用可能なテストコンフィギュレーションを参照して、ユーザー定義テストコンフィギュ レーションのベースにするテストコンフィギュレーションを選択します。
    • ビルトインテストコンフィギュレーションの詳細については、製品に付属の『ユー ザーズガイド』を参照してください。
  3. 次のいずれかの操作を行います。
    • ビルトインテストコンフィギュレーションをベースにしてユーザー定義テストコン フィギュレーションを作成する場合、ベースにするテストコンフィギュレーション を右クリックし、ショートカットメニューの [ 複製] をクリックします。
    • 新規にユーザー定義テストコンフィギュレーションを作成する場合、[ ユーザー定 義] カテゴリを選択して [ 新規] ボタンをクリックします。
  4. [ ユーザー定義] カテゴリに追加されたテストコンフィギュレーションを選択します。
  5. 必要に応じて設定を変更します。コードレビューの設定については、「コミット前コード レビュー スキャンの設定と実行」および 「コミット後コード レビュー スキャンの設定と実行」を参照してください。
  6. ( オプション) テストコンフィギュレーションを「お気に入りテストコンフィギュレーショ ン」として設定します。テストコンフィギュレーションを右クリックしてショートカット メニューの [ お気に入りとして設定] をクリックします。そしてデフォルト、1、2、3 のい ずれかを指定します。テストコンフィギュレーションが「お気に入りテストコンフィギュレーション」と設定さ れ、F のアイコンでマークされます。
  7. [ 適用] または [ 閉じる] をクリックして変更した設定を適用します。

グレーアウトされたテストコンフィギュレーション = 互換性がない

グレーアウトされているテストコンフィギュレーションは、互換性がないバージョンの  C++test で作成されたテストコンフィギュレーションであり、現行バージョンには適用できませ ん。

共有テストコンフィギュレーションのインポートとエクスポート

Team Server を使ってチーム間でテスト設定を共有していない場合でも、テストコンフィギュ レーションをエクスポートして各メンバーにインポートさせることで共有を実現できます。詳細 については「テストコンフィギュレーションのエクスポートとインポート」を参 照してください。

 

「お気に入り」テストコンフィギュレーションを変更する

「お気に入り」テストコンフィギュレーションは、デフォルトで使用されるテストシナリオを定義します。例えば、[ テスト] ボタンをク リックしてテストを開始する場合、C++test は「お気に入り」テストコンフィギュレーション で定義されたパラメーターに基づいてテストを実行します。デフォルトとして使用されるテストコ ンフィギュレーションを設定するのに加えて、他のよく使用されるテストコンフィギュレーション も「お気に入り」として指定できます。そうすれば、それらのテストコンフィギュレーションに簡 単にアクセスできます。

お気に入りコンフィギュレーションとしてテストコンフィギュレーションを設定するには、次の操 作を行います。

  1. [Parasoft] メニューの [ テストコンフィギュレーション] をクリックするか、[ テスト] ボ タンのプルダウンボタンをクリックして [ テストコンフィギュレーション] を選択します。
  2. お気に入りコンフィギュレーションとして設定するテストコンフィギュレーションを右ク リックし、ショートカットメニューの [ お気に入りとして設定] をクリックします。そして デフォルト (F)、1、2、3 のいずれかを指定します。

 お気に入りコンフィギュレーションのデフォルト (F) に設定されたテストコンフィギュレーション には、アイコンが表示されます。


ユーザーおよびチームのテストコンフィギュレーションをサブディレクトリに分類 する

ユーザーおよびチームのテストコンフィギュレーションをユーザー定義のサブディレクトリに分類 できます。

ユーザーまたはチームのテストコンフィギュレーションをユーザー定義のサブディレクトリに移動 するには、次の操作を行います。

  1. [Parasoft] メニューの [ テストコンフィギュレーション] をクリックするか、[ テスト] ツールバーボタンの [ テストコンフィギュレーション] ドロップダウンメニューをクリッ クしてテストコンフィギュレーションダイアログを開きます。
  2. サブディレクトリに移動するテストコンフィギュレーションを右クリックし、[ フォルダー の設定] ショートカットメニューをクリックして 1 つ以上のサブディレクトリを指定しま す。
    •  例えば、テストコンフィギュレーションを Static Analysis> Security の下に表示 するには、次のように入力します。

  3. [OK] をクリックします。指定されたサブディレクトリが存在しない場合は新たに作成され、 テストコンフィギュレーションがサブディレクトリに移動します。
      

作成されたサブディレクトリは [ テストの実行] ディレクトリから利用できるようになります。

  

  

コマンドラインモードでの呼び出しはサブディレクトリの影響を受けません。名前だけでテストコ ンフィギュレーションを指定できます。例: -config "team://Policy Compliance" 

チームテスト コンフィギュレーションの共有

チームテスト コンフィギュレーションとは

チームテスト コンフィギュレーションとは、チームで使用するテスト設定 ( 例えば使用する静的解 析ルール、テスト生成の設定など) を適用したテストコンフィギュレーションです。チームテスト コンフィギュレーションを Team Server に追加すれば、Team Server に接続しているすべての Parasoft Test 製品がこのコンフィギュレーションにアクセスできます。チームメンバー全員が同じ テストコンフィギュレーションを使用することによって、チームの品質とスタイルのガイドライン をチームのコードベースに一貫して適用できます。

チームテスト コンフィギュレーションを共有する

チームテスト コンフィギュレーションを Team Server に追加すると、Team Server に接続して いるチームメンバー全員の C++test からチームテスト コンフィギュレーションにアクセスす ることができます。チームテストコンフィギュレーションがユーザー定義ルールやルールマッピン グを使用する場合、ルールとルールマッピングを Team Server に追加することで、チームメン バーがこのルール/ ルールマッピングに自動的にアクセスすることができます。

チーム全体でチームテストコンフィギュレーションを共有するには、Team Server に接続してい る C++test (Architect または Server Edition) でアーキテクトまたはマネージャーが次の操作を行います。

  1. チームのテスト設定を反映したユーザー定義テストコンフィギュレーションを作成します。
    • 「ユーザー定義テストコンフィギュレーションを作成する」を参照。
  2. このテストコンフィギュレーションを Team Server にアップロードします。
    1. [Parasoft] メニューの [ テストコンフィギュレーション] をクリックします。
    2. アップロードするテストコンフィギュレーションを右クリックします。
    3. ショートカットメニューの [Team Server へアップロード] をクリックします。

複数のチームテスト コンフィギュレーションを設定できます。例えば、静的解析、単体テスト、回 帰テスト用にそれぞれテストコンフィギュレーション用意できます。

ヒント

  • チームテスト コンフィギュレーションがユーザー定義ルールまたはルールマッピングを使用している場合、関連するファイルが共有されます。詳細についてはこの後のセクションで説明します。

チームテスト コンフィギュレーションの変更

チームテスト コンフィギュレーションは、Parasoft Test を使って直接編集できます。

  1. [Parasoft] メニューの [ テストコンフィギュレーション] をクリックします。
  2. [ チーム] カテゴリから目的のチームテストコンフィギュレーションを選択します。
  3. 設定を変更します。
  4. [ 適用] をクリックして変更した設定を適用します。

Team Server で設定が更新され、更新された設定がチーム全体で共有されます。


別の更新方法

次の方法でチームテストコンフィギュレーションをアップデートすることができます。
チームテスト コンフィギュレーションを作成するときにベースにしたユーザー定義コンフィギュレーションを変更します。そして、「チームテスト コンフィギュレーションの共有」の操作を繰り返してテストコンフィギュレーションを再びアップロードします。

チームの「お気に入り」テストコンフィギュレーションの設定

チームの「お気に入りテストコンフィギュレーション」とは、Team Server に接続しているチームメンバーが特にテストコンフィギュレーションを指定せずにテストを開始したときに ( 例えば [ テスト] ボタンをクリックしてテストを開始したときに)、Parasoft Test が自動的に選択するテストコンフィギュレーションです。

チームのお気に入りテストコンフィギュレーションを設定するには、Parasoft Test で次の操作を行います。

  1. [Parasoft] メニューの [ 探索] > [Team Server] をクリックします。
  2. [ コンフィギュレーション] タブをクリックします。
  3. チームのお気に入りテストコンフィギュレーションにするテストコンフィギュレーションを選択します。
  4. [ チームのお気に入りとして設定] ボタンをクリックします。


ユーザー定義ルールマッピングの共有

ルールマッピングは、C++test でチームまたは組織のコーディングポリシーを推進するための重要な機能です。例えば、ビルトインルールの名前、重要度、ルールカテゴリをチーム/ 組織のコーディングポリシーに合わせてカスタマイズすることができます。

カスタマイズしたルールカテゴリと重要度をチームで共有するために rulemap.xml ファイルを作成し、Team Server を使ってチームメンバー全員がこのファイルにアクセスするようにできます。rulemap.xml の作成方法については、「ルール カテゴリ、ID、ヘッダー、重要度レベルの変更」を参照してください。

Team Server にrulemap.xml ファイルをアップロードするには、Architect Edition または Server Edition がライセンスされた C++test  から次の操作を行います。

  1. 共有する rulemap.xml ファイルにアクセスできるマシンで C++test を起動します。
  2. [Parasoft] メニューの [ 探索] > [Team Server] をクリックします。
  3. [ ルール] タブをクリックします。
  4. [ アップロード] ボタンをクリックします。
  5. 作成した rulemap.xml ファイルを選択して [ 開く] をクリックします。アップロードした rulemap.xml ファイルが [ ルール] タブに表示されているはずです。このファイルで指定されたルール設定は、Team Server に接続したすべての C++test で使用できます。
  6. [OK] をクリックします。
  7. C++test を再起動します。Team Server を停止する必要はありません。
  8. [Parasoft] メニューの [ テストコンフィギュレーション] をクリックします。
  9. テストコンフィギュレーションを選択して [ 静的] タブをクリックします。新しいルール設定が適用されているはずです。

ヒント

  • 今後マスターの rulemap.xml ファイルを変更した場合、「チームテスト コンフィギュレーションの共有」の操作を繰り返して変更後のファイルをアップロードする必要があります。変更後のファイルをアップロードしない場合、その変更は共有されません。

ユーザー定義ルールの共有

Team Server を使用すると、RuleWizard で作成したユーザー定義の静的解析ルールをチームメンバー全員がチェックするようにできます。Team Server でルールを管理すると、 Team Server に接続しているすべての C++test は最新のルールに常にアクセスします。ルールを変更してTeam Server にアップデートすると、チームのすべての C++test でも自動的にアップデートされます。

チームルールを追加するには、Team Server に接続している C++test (Architect または Server Edition) でアーキテクトまたは担当チーム メンバーが次の操作を行います。

  1. RuleWizard で 1 つ以上のユーザー定義ルールを作成します。
  2. .rule 拡張子を付けて各ルールを保存します。ルールは任意の場所に保存できます。
  3. 新規のルールを新しいカテゴリに入れる場合、次の操作を行って新しいカテゴリを作成します。
    1. [Parasoft] メニューの [ テストコンフィギュレーション] をクリックします。
    2. 任意のテストコンフィギュレーションカテゴリを選択します。
    3. [ 静的] タブをクリックします。
    4. [ ルールマップファイルの編集] ボタンをクリックします。
    5. [ カテゴリ] タブをクリックします。
    6. [ 新規] ボタンをクリックします。新しいエントリがカテゴリテーブルに挿入されます。
    7. 新しいエントリの [ カテゴリ ID] および [ カテゴリ詳細] フィールドに値を入力します。例えば、カテゴリ ID として ACME と入力し、カテゴリ詳細としてACME INTERNAL RULES と入力します。
    8. ステップ 9 で使用するので、メモ帳などにルールマップファイルの場所を控えます。
    9. [OK] ボタンをクリックします。
  4. [Parasoft] メニューの [ 探索] > [Team Server] をクリックします。
  5. [ ルール] タブをクリックします。
  6. [ アップロード] ボタンをクリックします。
  7. 新規作成した .rule ファイルを 1 つ以上選択し、[ 開く] をクリックします。アップロードした .rule ファイルが [ ルール] タブに表示されます。このタブに表示されるルールは、Team Server に接続しているすべての C++test で使用できます。
  8. ステップ 6 - 7 を繰り返して他のチームルールを追加します。
  9. 新しいルールカテゴリを追加したかルールマッピングを変更した場合、[ アップロード] ボタンをクリックし、編集したルールマップファイルを選択して [ 開く] ボタンをクリックします。アップロードしたルールマップ ファイルが [ ルール] タブに表示されます。このタブに表示されるルールは、 Team Server に接続しているすべての C++test 製品で使用できます。
  10. [OK] をクリックします。
  11. [Parasoft] メニューの [ テストコンフィギュレーション] をクリックします。
  12. 任意のテストコンフィギュレーションを選択して [ 静的] タブの [ ルールツリー] タブをクリックします。
  13. [ リロード] ボタンをクリックします。すべての利用可能なテストコンフィギュレーションで新規ルールを利用できるようになり、指定の ( 新規または既存の) カテゴリの下にルールが表示されます。ルールはデフォルトで無効に設定されています。
  14. 追加した新規ルールをチームテスト コンフィギュレーションで使用するには、次の操作を行います。
    1. 追加したルールはデフォルトで無効に設定されています。チームテストコンフィギュレーションで使用するルールを有効にします。
    2. 「チームテストコンフィギュレーションの共有」の操作を行います。すでに共有しているチームテストコンフィギュレーションの場合でも、設定を変更したらこの操作が必要です。
  15. [ 適用] または [ 閉じる] をクリックして変更を適用します。

ヒント

  • ユーザー定義ルールがテストコンフィギュレーションのルールツリーに表示されている場合 ( 例えば [ インポート] ボタンをクリックしてルールをインポートした場合など)、ショートカットメニューの [Team Server へアップロード] をクリックして Team Server にアップロードできます。
  • 後でチームルールを変更する場合、「ユーザー定義ルールの共有」の操作を繰り返して変更後のルールファイルをアップロードする必要があります。変更後の.rule ファイルをアップロードしない場合、この変更は共有されません。

Team Server からルールを削除する

Team Server からルールを削除するには、Team Server に接続している C++test (Architect または Server Edition) でアーキテクトまたは担当チーム メンバーが次の操作を行います。

  1. [Parasoft] メニューの [ 探索] > [Team Server] をクリックします。
  2. [ ルール] タブをクリックします。
  3. 削除するルールを選択します。
  4. [ 削除] ボタンをクリックします。
  5. [OK] ボタンをクリックします。

テストコンフィギュレーションの設定-上級編

テストコンフィギュレーションの継承の指定

同じパラメーター設定を複数のテストコンフィギュレーションで共有する場合 ( 例えば複数のテストコンフィギュレーションで同じルールを有効に設定する場合など)、1 つの親テストコンフィギュレーションを参照する「子コンフィギュレーション」を作成することができます。子テストコンフィギュレーションは親の設定を継承します。子コンフィギュレーションで特に設定を変更しないかぎり、親コンフィギュレーションの設定が使用されます。

継承は再帰的です。言い換えると、例えば MyConfig1 を継承して MyConfig2 を作成し、MyConfig2 を継承して MyConfig3 を作成することができます。MyConfig3 は MyConfig2 を継承しているので、したがって、MyConfig3 は MyConfig1 の一部の設定を継承します。

子テストコンフィギュレーションは、[ テストコンフィギュレーション] ダイアログに表示されているテストコンフィギュレーションから作成できるほか、HTTP を介して利用可能なテストコンフィギュレーションの場合はテストコンフィギュレーションの URL を指定して作成できます。

[ テストコンフィギュレーション] ダイアログから作成するには、次の操作を行います。

  1. [Parasoft] メニューの [ テストコンフィギュレーション] をクリックします。
  2. 親にするテストコンフィギュレーションを右クリックし、ショートカットメニューの [ 新しい子コンフィギュレーション] をクリックします。

HTTP を介して利用できるテストコンフィギュレーションから子テストコンフィギュレーションを作成するには、次の操作を行います。

  1. [Parasoft] メニューの [ テストコンフィギュレーション] をクリックします。
  2. [ ユーザー定義] カテゴリフォルダーを右クリックし、ショートカットメニューの [ 新しい子コンフィギュレーション] をクリックします。
  3. 親テストコンフィギュレーションの URL を入力します。例えば:  http://SOAtest.acme.com/configs/static.properties

子と親の継承関係を絶つには、次の操作を行います。

  1. [Parasoft] メニューの [ テストコンフィギュレーション] をクリックします。
  2. [ 親] フィールドの [ 分離] ボタンをクリックします。


重要な注意

  • 子テストコンフィギュレーションの親を変更することはできません。別の親を選択して [新しい子コンフィギュレーション] コマンドを実行して、新規に子テストコンフィギュレーションを作成してください。
  • いったん親から分離した子テストコンフィギュレーションを再び親に関連付けることはできません。分離したとき、親から継承したすべての設定が子テストコンフィギュレーションに直接適用されます。
  • テストコンフィギュレーションは 1 つの親だけを持つことができます。多重継承はサポートしていません。

テストコンフィギュレーションの比較

2 つのテストコンフィギュレーションを比較して、異なる箇所をハイライト表示することができます。テストコンフィギュレーションを比較したい状況として、例えば次のケースがあります。

  • 以前のバージョンの製品で静的解析ビルトインテストコンフィギュレーションをカスタマイズした。同じ静的解析ビルトインテストコンフィギュレーションが最新のバージョンでどのように変わったのか、どのような新規ルールが追加されて有効化されているのかを把握したい場合。
  • テストコンフィギュレーションを " クイックモード" で実行する場合にどの設定が影響を受けるのかを知りたい場合。
  • 子テストコンフィギュレーションとその親との違いを把握したい場合。

[ テストコンフィギュレーション] ウィンドウに表示されている任意の 2 つのテストコンフィギュレーションを比較するには、次の操作を行います。

  • 比較する 2 つのテストコンフィギュレーションを選択してから右クリックし、ショートカットメニューの [ 比較] をクリックします。

子テストコンフィギュレーションをその親と比較するには、次の操作を行います。

  • 子テストコンフィギュレーションを右クリックし、ショートカットメニューの [ 比較対象] > [ 親コンフィギュレーション] をクリックします。

子テストコンフィギュレーションをそのクイックモード版と比較するには、次の操作を行います。

  • 子テストコンフィギュレーションを右クリックし、ショートカットメニューの [ 比較対象] > [ クイックモードの構成] をクリックします。

比較エディターが開き、差異がハイライト表示されます。

 

 

画面上で明らかに分かる差異だけでなく、さらに深いレベルの差異も特定される点に注意してください。画面上で明らかに分かる差異とは、例えばあるオプションが一方ではオフであり、もう一方ではオンの場合です。深いレベルの差異とは、例えばルールのパラメータライゼーション設定が異なる場合です。

 

テストコンフィギュレーションのエクスポートとインポート

作成したテストコンフィギュレーションを他のチームメンバーと共有するには、エクスポート機能を使ってプロパティファイルにエクスポートします。他のチームメンバーはこのファイルをインポートしてテストコンフィギュレーションを追加できます。

エクスポートする

テストコンフィギュレーションをエクスポートするには、次の操作を行います。

  1. [Parasoft] メニューの [ テストコンフィギュレーション] をクリックします。
  2. エクスポートするテストコンフィギュレーションを右クリックし、ショートカットメニューの [ エクスポート] をクリックします。ファイル選択用ダイアログでエクスポートファイルの保存場所を指定します。

指定の場所にプロパティファイルが保存されます。作成されたプロパティファイルの保存場所の確認ダイアログが表示されます。

 

インポートする

エクスポートされたプロパティファイルをテストコンフィギュレーションにインポートするには、次の操作を行います。

  1. [Parasoft] メニューの [ テストコンフィギュレーション] をクリックします。
  2. [ ユーザー定義] カテゴリを選択して右クリックし、ショートカットメニューの [ インポート] をクリックして適切なプロパティファイルを選択します。

 

DTP のテスト コンフィギュレーション

C++test が Development Testing Platform に接続されている場合は、指定した DTP サーバー (「」を参照) に保存されたテスト コンフィギュレーションを使用して解析を実行できます。DTP のテスト コンフィギュレーションは IDE では変更できず、DTP で設定を行います。

DTP のテスト コンフィギュレーションをカスタマイズするには、次の操作を行います。

  1. [Parasoft] メニューの [テスト コンフィギュレーション] またはツールバーの [テスト実行] ボタンの [テスト コンフィギュレーション] ドロップダウン をクリックしてテスト コンフィギュレーション ダイアログを開きます。
  2. [DTP] カテゴリを線t九して DTP で利用可能なテスト コンフィギュレーションを参照し、設定を行うコンフィギュレーションをクリックします。
  3. [Configure in DTP] リンクをクリックして DTP インターフェイスのテスト コンフィギュレーション ページを開きます。

詳細については DTP のマニュアルのテスト コンフィギュレーション セクションを参照してください。

 

 

  • No labels