このセクションでは、C++test に付属のビルトイン テスト コンフィギュレーションについて説明 します。

 C++test には、最も一般的に使用されるテスト シナリオを表したビルトイン テスト コンフィギュ レーションが用意されています。ビルトイン テスト コンフィギュレーションをコピーして変更する か、新規にユーザー定義テスト コンフィギュレーションを作成することによって、ニーズに合わせ てテスト コンフィギュレーションをカスタマイズできます。ユーザー定義テスト コンフィギュレー ションは、[ ユーザー定義] または [ チーム] カテゴリに保管できます。ローカル マシンに保存され たユーザー定義テスト コンフィギュレーションは、ローカルの C++test で実行されるすべてのテ ストで利用可能です。チームの Team Server に格納されたチーム テスト コンフィギュレーション にはチーム メンバー全員がアクセスできます。

Static Analysis グループ

テスト コンフィギュレーション 説明
Flow Analysis Standard

テスト ケースやアプリケーションの実行を必要とすることなく、複 雑な実行時エラーを検出します。検出する欠陥には、未初期化メモ リ、不正なメモリ、null ポインターの間接参照、配列とバッファー のオーバーフロー、ゼロによる除算、メモリ リーク、リソース リー ク、デッド コードが含まれます。フロー解析テスト コンフィ ギュレーションの詳細については 「フロー解析ビルトイン テスト コンフィギュレーション」を参照してください。

Flow Analysis Fast 解析の深さとして「最も浅い」を使用するため、 Standard や Aggressive よりも迅速に実行します。 適度な量の問題を発見し、違反の数が爆発的に増加するのを防止します。フロー解析テスト コンフィギュレーションの詳細については「フロー解析ビルトイン テスト コンフィギュレーション」を参照してくださ い。
Flow Analysis  Aggressiveあらゆる疑わしいコードを違反として検出します。フロー解析テスト コンフィギュレーションの詳細については 「フロー解析ビルトイン テスト コンフィギュレーション」を参照し てください。
CERT C Coding StandardCERT C Secure コーディング スタンダードのルールをチェックし ます。このコーディング スタンダードは、セキュア コーディングの ためのガイドラインを提供します。その目的は ( たとえば未定義の プログラム動作や悪用可能な脆弱性をもたらしかねない未定義の動 作を排除することによって) 安全で信頼でき、セキュアなシステム の開発を容易にすることです。
CRulesC 言語に適用されるルールをチェックします。
CWE-SANS Top 25 Most Dangerous Programming Errors

2011 CWE/SANS Top 25 Most Dangerous Software Errors を チェックします。これは、ソフトウェアの深刻な脆弱性につながる 可能性がある、最も蔓延していて重大なエラーのリストです。 多く の場合、それらは発見しやすく、悪用しやすいエラーです。高い頻 度で、これらのエラーは攻撃者がソフトウェアを完全に乗っ取った り、データを盗んだり、ソフトウェアを動作不能にすることを可能 にします。

 (http://cwe.mitre.org/top25/index.html)

詳細については「2011 CWE/SANS Top 25 Most Dangerous Software Errors Mapping」を参照してくださ い。

DISA-STIG Coding StandardDISA STIG のルールをチェックします。これらのルールは、セ キュア開発のためのアメリカ合衆国国防総省のガイドラインです。 
Effective C++Scott Meyers の『Effective C++』に基づいたルールをチェック します。C++ プログラムの効率性をチェックします。
Effective STLScott Meyers の『Effective STL』に基づいたルールをチェックし ます。
EllemtelEllemtel Telecom Systems の C++ スタイル ガイドに基づいた ルールをチェックします。この C++ スタイル ガイドは電気通信業 界で広く使用されています。
Find Duplicated Code重複する関数、コード フラグメント、文字列リテラル、および #include ディレクティブを検出します。.
HIS Source Code MetricsHerstellerinitiative Software (HIS) グループによって要求される メトリクスをチェックします。
ISO 26262 Recommended RulesISO 26262 規格によって推奨されるルールをチェックします。
Joint Strike FighterJoint Strike Fighter (JSF) プログラム コーディング規約を推進す るルールをチェックします。
Metricsメトリクスの統計をレポートし、許容範囲を超えるメソッド値を検 出します。
MISRA CMISRA C コーディング規約を推進するルールをチェックします。
MISRA C 2004MISRA C 2004 コーディング規約を推進するルールをチェックしま す。
MISRA C++ 2008MISRA C++ 2008 コーディング規約を推進するルールをチェック します。
MISRA C 2012MISRA C 2012 コーディング規約を推進するルールをチェックしま す。
OWASP Top 10 Security Vulnerabilities

OWASP Top 10 Security Vulnerabilities (http:// www.owasp.org/index.php/Top_10_2007) にあるセキュリティ の問題をチェックします。

Payment Card Industry Data Security Standard

Payment Card Industry Data Security Standard (PCI DSS) の セクション 6 にあるセキュリティの問題をチェックします。

 (https://www.pcisecuritystandards.org/security_standards/pci_dss.shtml)

検出される問題には、クロス サイト スクリプティング、インジェク ション フロー、悪意のあるファイル実行などを防止するための入力 の検証、および適切なエラー処理の検証が含まれます。

Parasoft’s Recommended Rules重大な構造の結果を特定する可能性が高いルールをチェックします。 アプリケーションの問題を引き起こす構造の欠陥としては、低パ フォーマンス、メモリ リーク、セキュリティ脆弱性などがありま す。 
Parasoft's Recommended FDA C++ Phase 1「FDA General Principles for Software Validation」に準拠するた めに推奨されるルールの中で、主要なルールをチェックします。
Parasoft's Recommended FDA C++ Phase 2「FDA General Principles for Software Validation」に準拠するた めに推奨されるルールをチェックします。すでにフェーズ 1 のルー ル セットを実装している組織に推奨します。
Parasoft's Recommended FDA C++ Phase 3「FDA General Principles for Software Validation」に準拠するた めに推奨されるルールをチェックします。すでにフェーズ 2 のルー ル セットを実装している組織に推奨します。
SAMATE Annex A Source Code WeaknessesNIST Software Assurance Metrics and Tool Evaluation (SAMATE) プロジェクト (http://samate.nist.gov) の Annex A に記載されたコードの脆弱性をチェックします。
SecurityRulesセキュリティの脆弱性を防止または特定するルールをチェックしま す。
Sutter-AlexandrescuHerb Sutter と Andrei Alexandrescu の『C++ Coding Standards』に基づいたルールをチェックします。
The Power of TenGerard J. Holzmann の記事「The Power of Ten - Rules for Developing Safety Critical Code」 (http://spinroot.com/gerard/pdf/Power_of_Ten.pdf) に基づいたルールをチェックしま す

Unit Testing グループ

テスト コンフィギュレーション説明
File Scope> Build Test Executable (File Scope)

トライアル ビルドのためのテスト用実行モジュールをビルドします。
選択したファイルだけがインストゥルメントされます。

File Scope> Collect Stub Information (File Scope)

[ スタブ] ビューに表示するスタブ情報を収集します。
選択したファイルだけがインストゥルメントされます。

File Scope> Debug Unit Tests (File Scope)

デバッガー下で単体テストを実行します。
選択したファイルだけがインストゥルメントされます。

File Scope> Generate Stubs (File Scope)

見つからない関数定義と変数定義のためのスタブを生成します。
選択したファイルだけがインストゥルメントされます。

File Scope> Run Unit Tests 

利用可能なテスト ケースを実行します。
選択したファイルだけがインストゥルメントされます。

Build Test Executable 

トライアル ビルドのためのテスト用実行モジュールをビルドします。
すべてのプロジェクト ファイルをインストゥルメントします。

Collect Stub Information 

シンボル データを収集して [ スタブ] ビューに表示します。
すべてのプロジェクト ファイルをインストゥルメントします。

Debug Unit Tests 

デバッガー下で単体テストを実行します。
すべてのプロジェクト ファイルをインストゥルメントします。

Generate Regression Base

プロジェクト コードの現在の機能をキャプチャしたベースライン テスト スイートを生成します。このベースラインからの変更を検出するには、定期的にこのテスト スイートを使ってコード ベースをテストします。
結果は自動的に検証済みにされます。

Generate Stubs

見つからない関数定義と変数定義のためのスタブを生成します。
すべてのプロジェクト ファイルをインストゥルメントします。

Generate Test Suites選択したリソースのテスト スイートを生成します。テスト ケースは生成しません。
Generate Unit Tests選択したリソースの単体テストを生成します。
Run Unit Tests

利用可能なテスト ケースを実行します。
すべてのプロジェクト ファイルをインストゥルメントします。

Run Unit Tests with Memory Monitoring

利用可能なテスト ケースを実行し、メモリの問題についての情報を収集します。
すべてのプロジェクト ファイルをインストゥルメントします。

Application Monitoring グループ

テスト コンフィギュレーション説明
Build Application with Coverage Monitoringカバレッジ計測が有効な状態で、テスト対象アプリケーションをビルドします。
Build Application with Full Monitoringカバレッジ計測とメモリ エラー検出が有効な状態で、テスト対象アプリケーションをビルドします。
Build Application with Memory Monitoringメモリ エラー検出が有効な状態で、テスト対象アプリケーションをビルドします。
Build and Run Application with Coverage Monitoringカバレッジ計測が有効な状態で、テスト対象アプリケーションをビルドして実行します。
Build and Run Application with Full Monitoringカバレッジ計測とメモリ エラー検出が有効な状態で、テスト対象アプリケーションをビルドして実行します。
Build and Run Application with Memory Monitoringメモリ エラー検出が有効な状態で、テスト対象アプリケーションをビルドして実行します。

Embedded Systems グループ

 

テスト コンフィギュレーション 説明
ARM > Run ADS 1.2 Application with Memory Monitoringカバレッジと監視を有効にした状態で、AXD デバッガー上でテスト対象アプリケーションをビルドおよび実行します。
ARM > Run ADS 1.2 TestsAXD Debugger を使って単体テストをビルドおよび実行し、結果を収集します。
ARM > Run ARM Embedded Linux Application with Memory Monitoringカバレッジと監視を有効にした状態で、ARM Embedded Linux システム上でテスト対象アプリケーションをビルドおよび実行します ( リアル ターゲット デバイスまたはシミュレーター上)。テストの実行結果はターゲット マシンのファイルシステムに保存され、scp コマンドを使ってホストにコピーされます。
ARM > Run ARM Embedded Linux Test Executableリアル ターゲット デバイスまたはシミュレーター上で、SSH プロトコルを使って単体テストをビルドおよび実行します。テストの実行結果はターゲット マシンのファイル システムに保存され、scp コマンドを使ってホストにコピーされます。
ARM > Run RVDS 2.2 Application with Memory Monitoringカバレッジと監視を有効にした状態で、RVDS デバッガー上でテスト対象アプリケーションをビルドおよび実行します。
ARM > Run RVDS 2.2 TestsRVDS デバッガーを使って単体テストをビルドおよび実行し、結果を収集します。
ARM > Run RVDS 3.x 4.x Application with Memory Monitoringカバレッジと監視を有効にした状態で、RVDS デバッガー上でテスト対象アプリケーションをビルドおよび実行します。テスト バイナリの起動方法が記述された一時的なデバッガー スクリプトを生成し、このスクリプトを使ってデバッガーを起動します。 "Target connection configuration" テスト フロー プロパティを介してデバッガー スクリプトに渡されるデバッガー接続名をカスタマイズしなければならない場合があります。
ARM > Run RVDS 3.x 4.x Tests

RVDS デバッガーを使って単体テストをビルドおよび実行し、テスト結果を収集します。 テスト バイナリの起動方法が記述された一時的なデバッガー スクリプトを生成し、このスクリプトを使ってデバッガーを起動します。"Target connection configuration" テスト フロー プロパティを介してデバッガースクリプトに渡されるデバッガー接続名をカスタマイズしなければならない場合があります。

Arm > Run DS-5 Application with Memory Monitoring (Software Model)カバレッジとメモリ監視が有効な状態で、ソフトウェア モデル シミュレーター上でテスト対象をビルドおよび実行します。ソフトウェア モデルの名前 ( 実行ファイル) を選択できます。
Arm > Run DS-5 Test Executable (Software Model)ソフトウェア モデル シミュレーターを使って、単体テストをビルドおよび実行します。ソフトウェア モデルの名前 ( 実行ファイル) を選択できます。
Altium> Run Altium TASKING CTC Application with Mem Monitoring TASKING スタンドアロン デバッガー (dbgtc) を使ってTriCore 命令セット シミュレーター上でテスト対象アプリケーションをビルドおよび実行します。 カバレッジとメモリの監視が有効化されます。シミュレーター上でのテスト実行の結果はホスト マシンのファイル システムに保存されます。
Altium> Run Altium TASKING CTC Application with Mem Monitoring - CrossView TASKING Cross View Pro デバッガーを使って ( デフォルトではTriCore 命令セット シミュレーター上で) テスト対象アプリケーションをビルドおよび実行します。カバレッジとメモリの監視が有効化されます。シミュレーター上でのテスト実行の結果はホスト マシンのファイル システムに保存されます。
Altium>  Run Altium TASKING CTC TestsTASKING スタンドアロン デバッガー (dbgtc) を使ってTriCore 命令セット シミュレーター上で単体テストをビルドおよび実行します。 シミュレーター上でのテスト実行の結果はホスト マシンのファイル システムに保存されます。
Altium> Run Altium TASKING CTC Tests - CrossViewTASKING Cross View Pro デバッガーを使って ( デフォルトではTriCore 命令セット シミュレーター上で) テスト対象アプリケーションをビルドおよび実行します。シミュレーター上でのテスト実行の結果はホスト マシンのファイル システムに保存されます。
Spansion> Build and Run Application with Memory Monitoring for Spansion FR Softune - Simulatorメモリの監視が有効な状態でシミュレーター上で Softune アプリケーションをビルドして実行します。テスト実行の結果はホスト マシンのファイル システムに保存されます。
Spansion> Run Spansion FR Softune Tests - SimulatorSoftune デバッガーを使ってシミュレーター上で単体テストをビルドおよび実行します。テスト実行の結果はホスト マシンのファイル システムに保存されます。
Green Hills Software> Run GHS Testsテスト バイナリをビルドおよび起動して実行時ログを読み取る、 GHS MULTI Embedded 用の一体型のテスト コンフィギュレーション。
Green Hills Software> Run GHS Application with Mem Monitoringメモリの監視が有効な状態でアプリケーション モードでテスト バイナリをビルドおよび起動して実行時ログを読み取る、GHS MULTI Embedded 用の一体型のテスト コンフィギュ
レーション。
Green Hills Software> Run GHS Tests with Assembly Coverage Monitoring

テスト バイナリをビルドおよび起動して実行時ログを読み取る、GHS MULTI Embedded 用の一体型のテスト コンフィギュレーション。単体テストの結果に加えてアセンブリ カバレッジが収集されます。

IAR Systems> Run IAR ARM Application with Mem Monitoringメモリの監視が有効な状態でアプリケーション モードでテスト バイナリをビルドおよび起動して実行時ログを読み取る一体型のテスト コンフィギュレーション。手動シミュレーター構成を使用します。
IAR Systems> Run IAR ARM Tests テスト バイナリをビルドおよび起動して実行時ログを読み取る一体型のテスト コンフィギュレーション。手動シミュレーター構成を使用します。
IAR Systems> Run IAR EW Application with Mem Monitoring (Batch Template)メモリの監視が有効な状態でアプリケーション モードでテスト バイナリをビルドおよび起動して実行時ログを読み取る一体型のテスト コンフィギュレーション。EW 生成のバッチ スクリプトを使用します。
IAR Systems> Run IAR EW Tests (Batch Template)テスト バイナリをビルドおよび起動して実行時ログを読み取る一体型のテスト コンフィギュレーション。EW 生成のバッチスクリプトを使用します。
IAR Systems> Run IAR MSP430 Application with Mem Monitoringメモリの監視が有効な状態でアプリケーション モードでテスト バイナリをビルドおよび起動して実行時ログを読み取る一体型のテスト コンフィギュレーション。手動シミュレーター構成を使用します。
IAR Systems> Run IAR MSP430 Testsテスト バイナリをビルドおよび起動して実行時ログを読み取る一体型のテスト コンフィギュレーション。手動シミュレーター構成を使用します。
IAR Systems > Run IAR RX Application with Mem Monitoringメモリの監視が有効な状態でアプリケーション モードでテスト バイナリをビルドおよび起動して実行時ログを読み取る一体型のテスト コンフィギュレーション。手動シミュレーター構成を使用します。
IAR Systems > Run IAR RX Testsテスト バイナリをビルドおよび起動して実行時ログを読み取る一体型のテスト コンフィギュレーション。手動シミュレーター構成を使用します。
Keil uVision > Run Keil uVision Tests - ULINK2 (UART)uVision デバッガーを使って単体テストをビルドおよび実行し、RS232 接続を介して結果を収集します。結果の送信をキャプチャするためにシリアル ポート リスナーが使用されます。シリアル接続パラメーターをカスタマイズしなければならない場合があります。
Keil uVision > Run Keil uVision Tests - ULINKPro or Simulator (ITM)uVision デバッガーを使って単体テストをビルドおよび実行し、ITM ベースの通信チャネルを介して結果を収集します。
Keil uVision > Run Keil uVision Tests - Simulator (UART)uVision デバッガーとシミュレーターを使って単体テストをビルドおよび実行します。結果が収集され、シミュレートされたUART を介して送られます。シリアル接続パラメーターをカスタマイズしなければならない場合があります。
Keil uVision > Run Keil uVision Application with Memory Monitoring - ULINK2 (UART)カバレッジとメモリの監視を有効にした状態で、uVision デバッガーを使ってテスト対象アプリケーションをビルドおよび実行します。RS232 接続を介して結果が収集されます。結果の送信をキャプチャするために、シリアル ポート リスナーが使用されます。シリアル接続パラメーターをカスタマイズしなければならない場合があります。
Keil uVision > Run Keil uVision Application with Memory Monitoring - ULINKPro or Simulator (ITM)カバレッジとメモリの監視を有効にした状態で、uVision デバッガーを使ってテスト対象アプリケーションをビルドおよび実行します。結果は ITM ベースの通信チャネルを介して収集されます。 
Lauterbach Trace32 > Run Application with Memory Monitoring using Trace32 (FDX)Lauterbach Trace32 デバッガーを使ってテスト対象アプリケーションをビルドおよび実行します。カバレッジとメモリの監視が有効化されます。テストの実行結果はホスト マシンのファイルシステムに保存されます (FDX プロトコルを介して送られます)。デフォルトでは、デバッガーは TriCore TC1796 プロセッサで動作するように設定されます。
Lauterbach Trace32 > Run Tests using Trace32 (FDX)Lauterbach Trace32 デバッガーを使って単体テストをビルドおよび実行します。テストの実行結果はホスト マシンのファイル システムに保存されます (FDX プロトコルを介して送られます)。デフォルトでは、デバッガーは TriCore TC1796 プロセッサで動作するように設定されます。
QNX > Build and Run Application with Memory Monitoring for QNX Momenticsリモート QNX システム上でテスト対象アプリケーションをビルドおよび実行します。リモート システム プロパティ ( リモート ホスト、ユーザー名、およびテスト ディレクトリ) をカスタマイズする必要があります。リモート システムとの通信は rsh および rcp ツールに基づいています。
QNX > Run QNX Momentics Testsリモート QNX システム上で単体テストをビルドおよび実行します。リモート システム プロパティ ( リモート ホスト、ユーザー名、およびテスト ディレクトリ) をカスタマイズする必要があります。リモート システムとの通信は rsh および rcp ツールに基づいています。
Renesas HEW> Run HEW 4.x Tests (simulated IO)HEW デバッガーを使って SH シミュレーター上でテスト対象アプリケーションをビルドおよび実行します。 シミュレーター上でのテスト実行の結果はホスト マシンのファイル システムに保存されます。
Renesas HEW> Run HEW 4.x Application with Mem Monitoring (simulated IO)HEW デバッガーを使って SH シミュレーター上でテスト対象アプリケーションをビルドおよび実行します。 カバレッジとメモリの監視が有効化されます。シミュレーター上でのテスト実行の結果はホスト マシンのファイル システムに保存されます。
Texas Instruments > Run TI CCS 3.x Application with Memory Monitoringカバレッジとメモリの監視が有効な状態で、Code Composer デバッガーでテスト対象アプリケーションをビルドおよび実行します。"Target name" テスト フロー プロパティを介して CCS デバッガーとの接続の初期化に使用されるターゲット構成名をカスタマイズしなければならない場合があります。
Texas Instruments > Run TI CCS 3.x TestsCode Composer デバッガーを使って単体テストをビルドおよび実行し、結果を収集します。 "Target name" テスト フロープロパティを介して CCS デバッガーとの接続の初期化に使用されるターゲット構成名をカスタマイズしなければならない場合があります。
Texas Instruments > Run TI CCS 4.x Application with Memory Monitoringカバレッジとメモリの監視が有効な状態で、Code Composer デバッガーでテスト対象アプリケーションをビルドおよび実行します。CCS プロジェクトのアクティブ ターゲット構成を自動検出します。
Texas Instruments > Run TI CCS 4.x TestsCode Composer デバッガーを使って単体テストをビルドおよび実行し、結果を収集します。CCS プロジェクトのアクティブ ターゲット構成を自動検出します。
Wind River> Tornado> Build VxWorks Test Object (PassFS)結果を格納するためにパススルー ファイル システムを使用するテスト オブジェクトをビルドします。これには、静的カバレッジ データ ( 有効な場合) の生成と読み込みが含まれますが、テスト オブジェクトの起動や動的データの読み込みは含まれません。
Wind River> Tornado> Build VxWorks Test Object (Socket)結果の送信と格納にソケットを使用するテスト オブジェクトをビルドします。これには、静的カバレッジ データ ( 有効な場合) の生成と読み込みが含まれますが、テスト オブジェクトの起動や動的データの読み込みは含まれません。
Wind River> Tornado> Build VxWorks Test Object (TSFS)ターゲット サーバー ファイル システムを使用するテスト オブジェクトをビルドします。これには、静的カバレッジ データ (有効な場合) の生成と読み込みが含まれますが、テスト オブジェクトの起動や動的データの読み込みは含まれません。
Wind River> Tornado> Load and Run VxWorks Test ObjectWind River シェルを使ってテスト オブジェクトを起動します。PassFS および TSFS ビルド構成と共に使用します。
Wind River> Tornado> Load and Run VxWorks Test Object (Socket)ソケット リスナーを起動してから Wind River シェルを使ってテスト バイナリを起動します。ソケット ビルド構成と共に使用します。

Wind River> Tornado> Run VxWorks Application with Mem Monitoring (PassFS)

メモリの監視が有効な状態でアプリケーション モードでテスト バイナリをビルドおよび起動して実行時ログを読み取る一体型のテスト コンフィギュレーション。
Wind River> Tornado> Run VxWorks Unit Tests (PassFS)テスト オブジェクトをビルドおよび起動して実行時ログを読み取る一体型のテスト コンフィギュレーション。

Wind River> Workbench> Build VxWorks Test Executable - RTP (PassFS)

リアル タイム プロセス実行可能ファイルの形式でテスト バイナリを準備するために使用されます。テスト結果を格納するために PassFS が使用されます。
Wind River> Workbench> Build VxWorks Test Executable - RTP (Socket)リアル タイム プロセス実行可能ファイルの形式でテスト バイナリを準備するために使用されます。テスト結果を送信するために TCP/IP ソケットが使用されます。
Wind River> Workbench> Build VxWorks Test Executable - RTP (TSFS)リアル タイム プロセス実行可能ファイルの形式でテスト バイナリを準備するために使用されます。テスト結果を格納するために TSFS が使用されます。
Wind River> Workbench> Build VxWorks Test Module - DKM (PassFS)ダウンロード可能なカーネル モジュールの形式でテスト バイナリをビルドします。ctdt.c ファイルの生成を含みます。C++test を使ってテストする場合、オリジナルのビルドctdt.c と C++test 生成の ctdt.c との競合を避けるために、オリジナルの cdtd.c ファイルを除外しなければならないことがあります。テスト結果を格納するために PassFS が使用されます。
Wind River> Workbench> Load and Run VxWorks Test Executable (RTP) VxSim 上でテスト バイナリを実行します。
Wind River> Workbench> Load and Run VxWorks Test Object (DKM) VxSim 上でテスト バイナリを実行します。
Wind River> Workbench> Run VxWorks Application with Mem Monitoring - DKM (PassFS)

メモリの監視が有効な状態で、アプリケーション モードにおいてダウンロード可能なカーネル モジュール形式でテスト バイナリをビルドし、起動し、実行時ログを読み取る一体型のコンフィギュレーション。テスト結果を格納するために PassFS を使用します。

Wind River> Workbench> Run VxWorks Application with Mem Monitoring - DKM (TSFS)メモリの監視が有効な状態で、アプリケーション モードにおいてダウンロード可能なカーネル モジュール形式でテスト バイナリをビルドし、起動し、実行時ログを読み取る一体型のコンフィギュレーション。テスト結果を格納するために TSFS を使用します。
Wind River> Workbench> Run VxWorks Application with Mem Monitoring - RTP (PassFS)メモリの監視が有効な状態で、アプリケーション モードにおいてリアル タイム プロセスの形式でテスト バイナリをビルドし、起動し、実行時ログを読み取る一体型のコンフィギュレーション。テスト結果を格納するために PassFS を使用します。
Wind River> Workbench> Run VxWorks Application with Mem Monitoring - RTP (TSFS)メモリの監視が有効な状態で、アプリケーション モードにおいてリアル タイム プロセスの形式でテスト バイナリをビルドし、起動し、実行時ログを読み取る一体型のコンフィギュレーション。テスト結果を格納するために TSFS を使用します。
Wind River> Extract Symbols from VxWorks Image 
Windows Mobile> Build Test Executable for Windows Mobileターゲット デバイスに手動で送って実行する必要があるテスト用実行モジュールをビルドします。このテスト コンフィギュレーションは [Build Test Executable] テスト コンフィギュレーションに非常に似ています。唯一の違いは、実行後の成果物 ( カバレッジと結果) を生成するために外部ストレージカードを使用するよう構成されている点です。詳細については「実行時テスト」 を参照してください。  
Windows Mobile> Build and Run Application with Memory Monitoring for Pocket PCメモリの監視が有効な状態で、テスト用実行モジュールビルドし、エミュレーターにデプロイして実行します。実行が完了したら、C++test にテスト結果を読み込んで表示するために、ユーザーがエミュレーターを閉じる必要があります。詳細については「実行時テスト」を参照してください。
Window Mobile> Build and Run Test Executable for Pocket PCテスト用実行モジュールをビルドし、エミュレーターにデプロイして実行します。実行が完了したら、C++test にテスト結果を読み込んで表示するために、ユーザーがエミュレーターを
閉じる必要があります。詳細については「実行時テスト」を参照してください。
Window Mobile> Build and Run Test Executable with Memory Montoring for Smartphoneメモリの監視が有効な状態で、テスト用実行モジュールをビルドし、エミュレーターにデプロイして実行します。実行が完了したら、C++test にテスト結果を読み込んで表示するために、
ユーザーがエミュレーターを閉じる必要があります。詳細については「実行時テスト」を参照してください。
Window Mobile, Windows CE> Build and Run Test Executable for Pocket PCテスト用実行モジュールをビルドし、エミュレーターにデプロイして実行します。実行が完了したら、C++test にテスト結果を読み込んで表示するために、ユーザーがエミュレーターを閉じる必要があります。詳細については「実行時テスト」を参照してください。
Window Mobile> Build and Run Test Executable with for Smartphone

テスト用実行モジュールをビルドし、エミュレーターにデプロイして実行します。実行が完了したら、C++test にテスト結果を読み込んで表示するために、ユーザーがエミュレーターを閉じる必要があります。詳細については「実行時テスト」を参照してください。

Window Mobile, Windows CE>Build and Run Application with Memory Monitoring for WMobile or Windows CE (ActiveSync)メモリの監視が有効な状態で、テスト用実行モジュールをビルドし、エミュレーターにデプロイして実行します。通信チャネルとして ActiveSync が使用されます。このフローを使用するには、ホスト マシンとターゲット マシンの両方が ActiveSync をサポートしていなければなりません。ターゲットとして、ActiveSync がサポートする方法で接続された実際のデバイスまたはエミュレーターを使用できます。詳細については「実行時テスト」 を参照してください。

Window Mobile, Windows CE>Build and Run Test Executable for Windows Mobile or Windows CE (ActiveSync)

テスト用実行モジュールをビルドし、エミュレーターにデプロイして実行します。通信チャネルとして ActiveSync が使用されます。このフローを使用するには、ホスト マシンとターゲット マシンの両方が ActiveSync をサポートしていなければなりません。ターゲットとして、ActiveSync がサポートする方法で接続された実際のデバイスまたはエミュレーターを使用できます。詳細については「実行時テスト」 を参照してください。
Build Test Executable - Generic Embedded System 

 

Utilities グループ

テスト コンフィギュレーション説明
Load Test Results (File)

ファイル チャネルを介してテスト結果を収集します。デフォルトでは、このテスト コンフィギュレーションは ${cpptest:testware_loc} 中にログがあると想定します。必要に応じて、この場所は、C++test GUI からアクセスできるファイル システム上の任意の場所に変更できます。

Load Test Results (Sockets)

TCP/IP ソケットを介して送られるテスト結果を収集します。 このテスト コンフィギュレーションは Java ユーティリティ プログラムを起動してテスト結果をリッスンしキャプチャします。テスト結果とカバレッジ結果のポート番号はカスタマイズ可能です。ポート番号はresults_port および coverage_port プロパティで定義されます。

Extract Library Symbols

外部ライブラリ ( またはオブジェクト ファイル) からシンボル リストを抽出します。バイナリからシンボル情報を収集するための C++test の標準アルゴリズムが十分ではない場合は常にこのテスト コンフィギュレーションを使用するべきです。たとえば、Wind River DKM タイプのプロジェクトを使用している場合、この方法で収集された VxWorks イメージからすべてのシンボルを抽出します。通常、シンボルを抽出するバイナリの場所を入力するほか、ライブラリ/ オブジェクト ファイルのコンテンツをダンプするのに使用できる nm に似たユーティリティの名前も入力する必要があります。

Generate Stubs Using External Library Symbols[Extract Library Symbols] テスト コンフィギュレーションを実行した後に、スタブを生成するために使用されます。このテスト コンフィギュレーションは、外部ライブラリからのシンボル リストのファイルがプロジェクトの一時データ中に格納されているものと想定します。
Load Insure++ CoverageInsure++ カバレッジをロードします。

Code Review グループ

名前スコープコード レビュー
Pre-Commit ローカルで追加または変更されたファイルのみ

ソース管理システムにコミットする「前」にコードをレビューしたいチームに適しています。

このテスト コンフィギュレーションを使用するには、コード レビューの設定で [ スキャナー実行中にユーザー補助を表示] チェックボックスをオンにし、適切なレビューアーを作成者が指名できるようにしなければなりません。詳細については「コード レビュー」を参照してください。

Post-Commit  (Template)前日に変更されたすべてのプロジェクト ファイル

ソース管理システムにコミットした「後」にコードをレビューしたいチームに適しています。

このテスト コンフィギュレーションは、複製してカスタマイズしてから使用しなければなりません ( たとえば作成者とレビューアーのマッピングなど)。詳細については「コード レビュー」を参照してください。

Post-Commit

(Assign All)

前日に変更されたすべてのプロジェクト ファイル

ソース管理システムにコミットした「後」にコードをレビューしたいチームに適しています。

このテスト コンフィギュレーションは、カスタマイズせずに使用できます。ローカル コード レビューユーザーのマッピングを含みます。( あらゆる作成者について) スコープで発見されたすべてのリビジョン
を現行ユーザーに割り当てます。

プロジェクトやチームの優先順位に合わせてユーザー定義テスト コンフィギュレーションを作成する方法については、「テストコンフィギュレーションとルールの設定」を参照してください。

2011 CWE/SANS Top 25 Most Dangerous Software Errors とのマッピング

CWE IDCWE 脆弱性Parasoft IDParasoft ルール名
CWE-89SQL コマンドで使用される特殊要素の不適切な無効化 (SQL インジェクション)BD-SECURITY-TDSQLSQL インジェクションから防御する
CWE-78OS コマンドで使用される特殊要素の不適切な無効化 (OS コマンド インジェクション)BD-SECURITY-TDCMDコマンド インジェクションから防御する
CWE-120 入力のサイズをチェックしないバッファー コピー ( 古典的バッファオーバーフロー)BD-PB-OVERFFM不正な書式指定子によるバッファー オーバーフローを避ける
BD-PB-OVERFNZT ゼロで終わっていない文字列の読み込みによるオーバーフローを避ける
BD-PB-OVERFWRバッファー書き込み時のオーバーフローを避ける
BD-SECURITY-OVERFWR 汚染されたデータによるバッファー書き込み時のオーバーフローを避ける
CWE-22制限されたディレクトリへのパス名に対する不適切な制限 (パス トラバーサル)BD-SECURITY-TDFNAMES ファイル名インジェクションから防御する
CWE-676危険な可能性がある関数の使用PB-37 <cstring> ライブラリの無制限の関数を使用してはならない
SECURITY-11shell メタ文字に影響される可能性があるため安全でない shell 関数は使用しない
SECURITY-12バッファ オーバーフローの原因になる可能性があるため、安全ではない文字列関数を使用しないようにする
SECURITY-13 範囲をチェックしないため安全ではない文字列関数を使用しないようにする
SECURITY-14書式文字列で変数サイズを指定せずに scanf または fscanf 関数を使用しない
SECURITY-16 gets() を使用しない
SECURITY-22mbstowcs() 関数を使用しない
SECURITY-30プログラム コードで getpw 関数を使用しないようにする
SECURITY-31cuserid 関数を使用しない
CWE-327不具合のある、または危険な暗号アルゴリズムSECURITY-02C ライブラリの乱数を使用する関数は使用しないようにする
SECURITY-28 セキュリティ上の理由で乱数が必要な場合に、標準の乱数ジェネレータを使用してはならない
SECURITY-37弱い暗号化関数を使用してはならない
CWE-131 バッファー サイズの不正な計算BD-PB-ARRAY配列の境界を超えてアクセスしてはならない
BD-PB-OVERFRD バッファー読み込み時のオーバーフローを避ける
BD-SECURITY-ARRAY 汚染されたデータを配列添え字として使用しない
MRM-45 sizeof 演算子をポインタ型に使用して、malloc、calloc、realloc 関数で割り当てるメモリのサイズを指定してはならない
CWE-134 制御されない書式文字列SECURITY-05 printf/wprintf 関数を変数パラメータ 1 個だけで使用しないようにする
SECURITY-08 2 番目のパラメータが変数である場合に、fprintf/fwprintf 関数をパラメータ 2 個だけで使用してはいけない
CWE-190整数のオーバーフローまたはラップアラウンドBD-SECURITY-INTOVERF 汚染されたデータによる整数オーバーフロー/アンダーフローを防ぐ
MISRA-051 符号なし整数定数式の評価は結果の型にはまるべきである


 

  • No labels