このセクションの内容:

Jama Connect へのテスト データの送信 

次の図は、Jama Connect 環境に Parasoft DTP および Parasoft テスト実行ツールを統合するための自動インフラストラクチャの実装方法を示しています。

  1. Parasoft ツールによって実行されるテストに関連付けることができる要件を Jama Connect で作成します。 
  2. テスト ファイルで、次のアノテーション形式を使用して、Jama Connect システム要件 ID をテストにマッピングします。

    * 次のアノテーションは、テストを要件にマッピングします。
    *@req <Jama System Requirement ID> 
    @TEST
    ...

    • @test <Jama Test ID> アノテーションを使用して、テストを Jama のテスト定義に関連付けます。@test を使用する場合は、Parasoft DTP から Jama に送信する予定の実行ステータスのテストに、テストケースのステップが定義されていないことを確認してください。Parasoft DTP は、ステップが定義されているテストケースのテストケース実行を更新できません。

    • @req <Jama Story ID> アノテーションを使用して、テストを Jama のストーリーに関連付けます。@req を使用するときは、結果を送信する予定の Jama プロジェクトで次の関係タイプが定義されていることを確認してください: "verified by"。このような関係は、Parasoft DTP が Jama でテストケースを作成し、それを Jama の要件に関連付けるときに必要になります。

    テストにアノテーションを付けると、DTP レポートで視覚化できるように、テストが Jama Connect のエンティティにリンクされます。アノテーションは、Parasoft 言語ツール (C/C++test、dotTEST、Jtest) の単体テスト ファイルに追加されます。SOAtest で実行される機能テストの場合、アノテーションは .tst ファイルに追加されます。アノテーションの追加方法の詳細については、ご使用のツールのドキュメントを参照してください。UI で生成された ID ではなく、Jama Connect URL からの ID を使用する必要があります。

      
  3. CI プロセスの一部としてテストを実行します。IDE からテストを手動で実行することもできます。
  4. テスト実行の一環として、Parasoft テスト実行ツールはフィルターとビルド ID でテスト結果をタグ付けし、データを DTP に送信します。DTP ダッシュボードに テスト ウィジェット を追加し、フィルターとビルド ID を設定することにより、DTP で結果を確認できます。開発者は、テスト実行データを DTP から IDE にダウンロードして、失敗したテストに対処できます。
  5. Sending Test Data to External System フローをデプロイした場合 (「Sending Test Data to External System フローのデプロイ」を参照)、Data Collector が Parasoft ツールからデータを受信すると、単体テストと機能テストの結果が Jama Connect に自動的に送信されます。デフォルトでは、フローは Data Collector が受信した任意のプロジェクトの単体テストおよび機能テストの結果をフォワードしますが、特定のプロジェクトのデータだけを送信するようフローを設定できます (「特定の DTP プロジェクトの結果を送信する」を参照)。
    また、DTP REST API エンドポイントに POST リクエストを手動で送信して、DTP データベースから Jama Connect に結果を送信することもできます。API 呼び出しの URL パラメーターとして、DTP フィルターとビルドの ID、および一連の Jama テスト ケースの ID を渡します。

    curl -X POST -u <username>:<password> "http://<host>:<port>/grs/api/v1.7/linkedApps/configurations/1/syncTestCases?filterId=<filterID>&buildId=<buildID>&testCaseSetId=<JAMA_TEST_CASE_SET_ID>"

    フィルターおよびビルド ID は、テスト エクスプローラーの URL で利用できます。
     

    以下の表でエンドポイントのパラメーターについて説明します。

    パラメーター

    説明

    必須

    filterId integerテスト データを含むフィルター IDを指定します。フィルター ID は整数値です。フィルター名と混同しないでください。Required (必須)
    buildId stringテスト データを含むビルド ID を指定します。Required (必須)
    groupResultsBySOAtestTST 
     
    boolean

    true に設定すると、SOAtest の結果が .tst ファイルでグループ化されます。その結果、1 つの .tst ファイルが 1 つの Jama テストに関連付けられます。

    false に設定すると、SOAtest.tst 内の各テストステップが Jama テストに関連付けられます。

    デフォルトは false です。 

    任意
    testCaseSetId
    テストケース セットの ID

    Jama にテストケース定義がない場合、Parasoft DTP が新しいテストケース定義を作成する Jama のテストケース セットのIDを指定します。テストケース定義が Jama で見つかった場合、この testCaseSetId であろうとなかろうと、テストケース定義は単に更新されるだけで、この特定のテストケース セットに移動されるわけではありません。 

    testCaseSetId パラメーターの値は、Jama の "Set of Test Cases" アイテム タイプの ID でなければなりません。UI で生成された ID ではなく、Jama Connect URL からの ID を使用する必要があります。プロジェクト ツリーのテスト ケース ノードをクリックした後、URL から ID を取得できます。

    任意

    テスト ケース セットは、DTP が必要に応じて新しいテスト ケースを作成できるアイテムです。次のステップで説明するように、同等のテスト ケースが存在しない場合、DTP は Jama Connect に結果を送信するときに新しいテスト ケースを作成します。  

  6. DTP は、filterId パラメーターと buildId パラメーターに一致するテスト結果を見つけ、そのデータを Jama Connect のシステム要件に送信します。 
    • DTP は @req <ID> で結果を検索すると、Jama Connect で一致するアイテムを検索します。一致が見つかった場合、アイテムに関連付けられたテスト ケースにテスト実行が追加されます。要件 ID に一致するテスト ケースがない場合は、テスト ケースが作成されてテスト実行が追加されます。
    • external-app-sync.log ファイルも <DTP_INSTALL>/logs ディレクトリに書き込まれます。このログ ファイルには、DTP から Jama Connect へのテスト結果の送信に関する進捗情報が含まれています。 

DTP がレポートを処理し、結果を Jama Connect に送信した後、以下のような応答があります。

{
   "createdTestSession": "DTPP-521",
    "created": [
        "DTPP-519, testName = testBagSumAdd"
    ],
    "updated": [
        "DTPP-519, testName = testBagSumAdd",
        "DTPP-518, testName = testBagSimpleAdd"
    ],
    "ignored": [
        "MAGD-567, testName = testBagNegate",
        "QAP-512, testName = testTryThis3",
        "QAP-512, testName = testTryThis4",
        "MAGD-567, testName = testBagMultiply"
    ]
}

特定の DTP プロジェクトの結果を送信する

Sending Test Data to External System フローを使用して単体テストおよび機能テストの結果を送信している場合、デフォルトでは、すべての DTP プロジェクトのデータが Jama Connect に送信されます。結果として、Jama Connect ID に一致するアノテーションを含むすべての DTP プロジェクトで収集されたテストを含むよう、作業アイテムが更新されます。ただし、特定のプロジェクトのデータだけを送信するよう、フローを設定することもできます。 

  1. Extension Designer を開き、Sending Test Data がデプロイされたサービスを開きます。
  2. Toggle Projects Mode ノードをダブルクリックし、ドロップダウンの値を true に設定します。これにより、特定のプロジェクトにのみデータを送信する機能がオンになります。
  3. [完了] をクリックします。
  4. Configure Projects ノードをダブルクリックします。このノードのロジックは、同期操作中に Azure DevOps にデータを送信する DTP プロジェクトを指定します。これらのプロジェクト構成は、JSON 配列に格納されます。
    例として、すでに定義されているプロジェクト構成のサンプルがあります。

    { project: 'abc' }

    さらにプロジェクト構成を追加するには、最後のプロジェクト構成の末尾にカンマを追加し、その下に新しいエントリを追加します。例:

    msg.configuredProjects = [
        { project: 'abc' },
        { project: 'foobar' }
    ];
  5. 目的のプロジェクトを構成したら、[完了] をクリックします。
  6. [デプロイ] をクリックして、これらの変更を反映してフローを更新します。

フローを実行すると、指定した DTP プロジェクトのテスト結果だけが Jama Connect に送信されます。 

Jama Connect での結果の表示

テスト データを送信した後、Jama Connect で結果を表示できます。次の画像は、Jama Connect のいくつかのテスト ケースを含む一連のテスト ケースを示しています。 

個々のテスト ケースについて、テスト実行などの詳細情報をさらに確認できます。

テスト実行をクリックして実行の詳細を表示します。

  • No labels