このセクションの内容

概要

テスト コンフィギュレーションは、DTP Engine がどのようにコードを解析するかを定義したものです。たとえば、有効にする静的解析ルール、実行するテストなどの解析パラメーターを定義します。

dotTEST DTP Engine

にはビルトイン テスト コンフィギュレーションがあらかじめ用意されていますが、ユーザーは、DTP Server でユーザー独自のテスト コンフィギュレーションを作成して保存することもできます。 DTP プラグインから DTP Server にアクセスできます。DTP Report Center の管理者レベルのアクセス権限を持っている場合、DTP で直接テスト コンフィギュレーションを作成できます ([管理] > [エンジン] > [テスト コンフィギュレーション])。

DTP Server からユーザー定義のテスト コンフィギュレーションをダウンロードし、*.properties ファイルとして [INSTALL_DIR]/configs/user ディレクトリに保存できます。 

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

実行するテスト コンフィギュレーションを指定する方法はいくつかあります。

  • -config スイッチを使用し、ビルトイン、ユーザー定義、またはDTP にホストされたテスト コンフィギュレーションを指定して

    dottestcli

    を実行します。

    -config "builtin://Recommended Rules"
    -config "user://Foo Configuration"
    -config "dtp://Foo Team Configuration" 
    -config "dtp://FooTeamConfig.properties"

    テスト コンフィギュレーションの .properties ファイルのファイル名または URL を指定することもできます。

    -config "C:\Devel\Configs\FooConfig.properties"
    -config "http://foo.bar.com/configs/FoodConfig.properties"

    たとえば、コマンドは次のようになります。

    dottestcli.exe -solution "C:\Devel\MyFooSolution\MySolution.sln" 
    -config "builtin://Demo" -report "C:\Report"

  • .properties ファイルで、-config オプションが指定されていない場合に実行されるデフォルト コンフィギュレーションを指定します。

    dottest.configuration=user://Configuration Name

利用可能なテスト コンフィギュレーションの表示

利用可能なテスト コンフィギュレーションを出力するには、-listconfigs スイッチを使用します。

Use the -listconfigs switch to print the available test configurations. 

ビルトイン テスト コンフィギュレーション

次の表は、[INSTALL]/configs/builtin ディレクトリにインストールされるビルトイン テスト コンフィギュレーションです。


ビルトイン テスト コンフィギュレーション説明
Recommended Rules推奨ルールのデフォルト コンフィギュレーションです。重要度 1 および 2 の大部分のルールをカバーします。Flow Analysis Fast コンフィギュレーションのルールを含みます。 
Find Duplicated Code

重複コードをレポートする静的コード解析ルールを適用します。重複コードは、アプリケーションの設計が適切でないことを表す可能性があり、保守性の問題につながる場合があります。

Metricsコード メトリクスを計測します。 
Flow Analysis

テスト ケースやアプリケーションを実行せずに複雑な実行時エラーを検出します。検出されるエラーには、未初期化または無効なメモリの使用、null ポインター間接参照、配列およびバッファーのオーバーフロー、ゼロ除算、メモリおよびリソース リーク、デッド コードなどが含まれます。特別なFlow Analysis ライセンス オプションが必要です。

Flow Analysis Aggressive深いフロー解析を行うルールを含みます。このコンフィギュレーションの実行には、非常に長い時間がかかる可能性があります。
Flow Analysis Fast浅いフロー解析を行うルールを含みます。許容できる可能性があるエラーがレポートされるのを抑制します。
Critical Rules

重要度 1 のルールの大部分および Flow Analysis Fast コンフィギュレーションのルールを含みます。 

Demoさまざまなコード解析技術をデモンストレーションするルールを含みます。大規模なコードの解析には適していない可能性があります。
Find Memory Issuesメモリ管理の問題を検出するルールを含みます。 
Find Unimplemented Scenarios未実装のシナリオを検出するためのルールが含まれます。 
Find Unused Code 未使用コード/デッド コードを検出するためのルールが含まれます。
Check Code Compatibility against .NET [2.0, 3.0, 3.5, 4.0 Client Profile, 4.0 Full, 4.5.0, 4.5.1, 4.5.2, 4.6.0, 4.6.1, 4.6.2, 4.7.0]

指定されたバージョンの .NET framework への互換性を検証するテスト コンフィギュレーションのセットが含まれます。 

CWE-SANS Top 25 Most Dangerous Programming Errors

CWE-SANS の Top 25 Most Dangerous Programming Errors として分類された問題を検出するルールを含みます。 
NIST SAMATENIST SAMATE 標準で識別された問題を検出するルールを含みます。
OWASP Top 10 Security VulnerabilitiesOWASP のセキュリティ脆弱性トップ 10 で識別された問題を検出するルールを含みます。
PCI Data Security StandardPCI Data Security Standard で識別された問題を検出するルールを含みます。 
Security Assessmentセキュリティの問題を検出する一般的なテスト コンフィギュレーションです。
IEC 62304 (Template) IEC 62304 医療規格を適用するためのテンプレート コンフィギュレーションです。 
Run NUnit Tests解析スコープ内で検出された NUnit テストを実行します。
Run NUnit Tests with coverage解析スコープ内で検出された NUnit テストを実行し、カバレッジを計測します。
Calculate Application Coverageアプリケーション カバレッジ データを処理して coverage.xml ファイルを生成します。「Web アプリケーションのアプリケーション カバレッジ」を参照
Execute MSTests with CoverageMSTests を実行し、カバレッジを収集します。 「単体テスト」を参照
Execute MSTestsMSTests を実行します。 「単体テスト」を参照
Collect Static Coverageアプリケーション カバレッジに必要な静的カバレッジ データを生成します。「Web アプリケーションのアプリケーション カバレッジ」を参照

カスタム ルールの作成

カスタム ルールを作成するには、RuleWizard を使用します。DTP Engine でルールを使用するには、テスト コンフィギュレーションでルールを有効化し、カスタム ルール ファイルを以下のどちらかのディレクトリに配置する必要があります。

  • [INSTALL_DIR]\rules\user\
  • [DOCUMENTS DIR]\Parasoft\[engine]\rules
    [DOCUMENTS DIR] は Windows の "My Documents" ディレクトリを指します。



  • No labels