このトピックでは、SOAtest で静的解析違反を抑制する方法について説明します。
このセクションの内容:
抑制とは
抑制は、レポートされたタスクの特定のオカレンスを無視しつつ、テストを実行したりコード解析ルールに従うことができる特別なマーカーです。機能テストに関連するタスクを抑制することで、テストの初期段階で生成されるノイズを削減したり、失敗が期待されるステップを無視したりすることができます。レポートされたタスクが抑制されている場合でも、テストは失敗します。
静的解析の抑制では、アプリケーションの重要部分に影響を与えない例外を定義することにより、プログラミング ガイドラインに準拠できます。1 つのコード解析ルールに対して複数のタスクがレポートされる場合がありますが、その解析ルールが特定のケースに適用できない場合、抑制を適用できます。
抑制を適用すると、 parasoft.suppress ファイルがテスト ファイルと同じ場所に作成されます。この抑制ファイルには、どのファイルに抑制があるか、抑制の作成者、抑制の理由などの情報が含まれます( 「Manually Defining Suppression Files」を参照)。抑制されたタスクは [品質タスク] ビューからも削除されます。
抑制の設定はテスト コンフィギュレーションとは無関係です。テスト コンフィギュレーションは、テスト実行の範囲、カバレッジ設定、その他の機能、および静的解析中にチェックされる一連のルールを定義します。抑制は、失敗したテストに関連付けられているタスク、または静的解析結果によってレポートされるタスクを、[品質タスク] ビューとレポートに表示する必要があるかどうかを定義します。
タスクの抑制
- [品質タスク] ビューで、レポートされたタスクを右クリックし、[タスクの抑制] を選択します。
タスク(ルールカテゴリ、特定のルール、ファイルなど)を含むノードを右クリックして、すべての子タスクを抑制することもできます。
- 抑制を保存する場所を選択します。Team Server での抑制の保存は非推奨になり、デフォルトで無効化されています。Team Server での抑制は将来のバージョンで削除される予定です。詳細については「Enabling Team Server Suppressions (Deprecated)」を参照してください。
- タスクを抑制する理由を入力し、[OK] をクリックします。
タスクは抑制され、 [品質タスク] ビューから抑制ファイルに移動されます。このファイルは、テスト ファイルと同じディレクトリに作成されます。抑制を確認するには、SOAtest エディターまたはプレーンテキスト エディターでファイルを開きます。parasoft.suppress ファイルの内容の詳細については 「抑制ファイルを手動で定義する」を参照してください。
抑制ファイルを手動で定義する
テスト ファイルと同じ場所にテキスト ファイルを作成し、以下の形式で抑制情報を記述することで、parasoft.suppression ファイルを手動で作成できます。
suppression-begin file: <FILE> message: <TASK MESSAGE> reason: <REASON FOR SUPPRESSION> author: <SUPPRESSION AUTHOR> suppression-end
SOAtest は、テストケースを ID で区別しません。同じメッセージを持つ、同じ .tst ファイルからのすべてのタスクが抑制されます。以下は、2 つの機能テスト ステップの抑制を含む抑制ファイルの例です。
suppression-begin file: com.parabank.login.tests_testParabank_parasoft_com202007301253532.tst message: The value of the property "balance" has changed from "5022.93" to "-2692". reason: The return value does not need to be tested author: user1 suppression-end suppression-begin file: com.parabank.login.tests_testParabank_parasoft_com202007301253532.tst message: The value of the property "id" has changed from "13344" to "12345". reason: The return value does not need to be tested author: user1 suppression-end
Team Server での抑制の有効化(非推奨)
Team Server での抑制の保存と [抑制] ビューは、SOAtest 2020.2 以降非推奨になりました。[抑制(非推奨)] ビューから、古いバージョンの SOAtest で作成された Team Server の抑制とビューの抑制を有効にできます。
- メイン メニューから [Parasoft] > [ビューの表示] > [抑制(非推奨)] を選択します。
- 省略記号メニューから [Enable deprecated suppressions] を選択します。
抑制の削除
parasoft.suppress ファイルから抑制を削除して、タスクの抑制を解除することができます。テストまたは解析を再実行すると、タスクが再び [品質タスク] ビューに表示されます。
抑制が TeamServer に保存されている場合は、[抑制(非推奨)] ビューで抑制を選択して削除(X)ボタンをクリックします。