このセクションでは、テスト/コードと開発成果物を関連付ける方法について説明します。
タスク、機能リクエスト、要件などの開発成果物とテスト/コードを関連付け、テスト対象アプリケーションの品質の追跡を容易にできます。関連付けは、テスト コードに Javadoc に似たタグを追加し、開発成果物 ID を指定することで行います。C/C++test にはいくつかデフォルトのタグが含まれていますが、ニーズに合わせてカスタム タグを作成することもできます。
@req および @test タグは、アプリケーション ライフサイクルまたは要件管理システム (ALM/RMS) 内でテストから成果物へのトレーサビリティを可能にするための特別なタグです。Parasoft DTP および Traceability Pack extension for DTP も必要です。
このセクションでは、関連付けタグを適用するための基本的なプロセスを説明します。
以下のタグはデフォルトでサポートされます。
独自のタグの作成については「欠陥/課題のカスタム タグの使用」を参照してください。
開発成果物とテスト/コードを関連付けるには、コードのコメントとしてタグを追加し、その後に成果物 ID を続けます。
例:
//@REQ 987 333 //@TASK 543, 123 |
/** * @req 2453, 198 * @task 2342 156 444 */ |
テスト ケースとの関連付けを作成するには、コメントがテスト ケース マーカー CPPTEST_TEST_CASE_BEGIN と CPPTEST_TEST_CASE_END の間にあるようにします。
例:
/* CPPTEST_TEST_CASE_BEGIN test_foo */ // @FR 903, 555 // @TASK 781 void TestSuite::test_foo() { //test case body } /* CPPTEST_TEST_CASE_END test_foo */ |
ファイルをソース管理システムにチェックインするとき、開発成果物とテスト/コードを関連付けることができます。ファイルと成果物を関連付けるには、コミット時のコメントにタグと成果物 ID を含めます。
git commit -m "@pr ABC-123" |
タグを使う代わりに、次の形式でテスト ケース名の接尾辞として成果物 ID を追加することでテスト ケースと開発成果物を関連付けることができます。
<test case name>_<tag><ID> |
次の例では、テスト ケースはバグ 3636 が解決したことを検証します。
test_case1_PR3636 |
ALM、欠陥、要求トラッキング システム (codeBeamer、Jira、VersionOne など) の作業アイテムとテスト ケースを関連付けるために使用するタグをカスタマイズすることができます。この機能を利用すると、欠陥を表す言語に合わせてタグを設定できます。たとえば、ある組織は欠陥を表すために "PR" という用語を使用し、別の組織は "欠陥" という用語を使用しているものとします。この場合、用語として "欠陥" を使用する組織は、デフォルトの @pr タグではなく カスタム タグの @defect を使用したいでしょう。
カスタム タグを指定するには、次の操作を行います。
関連付けられた成果物に C/C++test レポートをリンクするには、成果物へのリンクの書式を表す URL テンプレートを指定する必要があります。それには、次の操作を行います。
カスタム課題トラッキング タグ @bugzilla および @defect を使用しているものとします。
/** * @pr 2453, 462345 * @bugzilla 2342 * @defect 87766 */ void testFoo1() {} |
次の PR プロパティが Parasoft DTP に送られます。
2453
462345
2342
87766
/** * @pr 2453, 462345 2342 * 8766 996686776 - these IDs are ignored, because they are not preceded by a tag on the same line * @pr 87766 */ |
次の PR プロパティが Parasoft DTP に送られます。
2453
462345
2342
87766
カスタム課題トラッキング タグ @bugzilla および @defect を使用しているものとします。
/* CPPTEST_TEST_CASE_BEGIN test_foo */ // @pr 123, 456 // @bugzilla 789 // @defect 1357 // @req 7799 void TestSuite::test_foo() { //test case body } /* CPPTEST_TEST_CASE_END test_foo */ |
次の PR プロパティが Parasoft DTP に送られます。
123
456
789
1357
7799