C/C++対応静的解析・単体テストツール
C++testは、静的解析(コーディング規約チェック/フロー解析)、単体テスト、実行時メモリエラー検出の4つの機能を搭載したC/C++言語対応のテストツールです。
このカタログについて
ドキュメント名 | C++test |
---|---|
ドキュメント種別 | 製品カタログ |
ファイルサイズ | 1.8Mb |
登録カテゴリ | |
取り扱い企業 | テクマトリックス株式会社 (この企業の取り扱いカタログ一覧) |
このカタログ(C++test)の内容
Page 1:BugDetectiveC c test“numberOfEmployees”maypossibilybezero“person->daysWorkedInPassedMonth”maypossibilybezero[2]divisionByZero.c!!cdivisionByZero.c(57):processFile(file,employees)divisionByZero.c(53):if(file==NULL){divisionByZero.c(52):numberOfEmployeesdivisionByZero.c(57):NumberOfEmployees=processFile(file,employees)divisionByZero.c(58):processStaff(employees,numberOfEmployees)divisionByZero.c(45):return0;←C c test“numberOfEmployees”maypossibilybezero“person->daysWorkedInPassedMonth”maypossibilybezero[2]divisionByZero.c!! cdivisionByZero.c(57):processFile(file,employees)divisionByZero.c(53):if(file==NULL){divisionByZero.c(52):numberOfEmployeesdivisionByZero.c(57):NumberOfEmployees=processFile(file,employees)divisionByZero.c(58):processStaff(employees,numberOfEmployees)divisionByZero.c(45):return0;←C testC testC testC C C testC testこのカタログの印刷には、環境に配慮した植物油インキを使用しています。テストケース、スタブ、テストドライバーを自動生成単体テスト、実行時メモリエラー検出を自動実行8種類のコードカバレッジを計測実機(ターゲット機)で単体テスト、実行時メモリエラー検出、コードカバレッジ計測を自動実行コーディング規約チェックでソースコードを検証処理フローを解析してエラーを検出【開 発 元】○稼動環境C/C 対応自動テストツールC testの情報は http://www.techmatrix.co.jp/quality/ctest/● 掲載されているあらゆる製品名は、各社の商標あるいは登録商標です。C/C 対応自動テストツールWindows●Windows Server 2003(32bit)、Windows XP(32bit/64bit)、Windows Vista(32bit/64bit)、Windows 7(32bit/64bit)、Windows 8.x(32bit/64bit)、Windows 10(32bit/64bit)、Windows Server 2008(64bit)、Windows Server 2012(64bit)●コンパイラ・Visual C 6.0、.NET、.NET 2003、2005、2008、2010、2012、2013、2015・GNU、MinGW gcc/g 2.95.x、3.2.x、3.3.x、3.4.x・GNU gcc/g 4.0.x、4.1.x、4.2.x、4.3.x、4.4.x、4.5.x、4.6.x、4.7.x、4.8.x、4.9.x(C 14標準に関するGNU GCC 拡張はサポートされていません)・Green Hills MULTI for Windows x86 Native v4.0.xLinux(32bit)●Linuxカーネル2.4以上●glibc 2.4以上●x86互換プロセッサ●コンパイラ・GNU gcc/g 2.95.x、3.2.x、3.3.x、3.4.x、4.0.x、4.1.x、4.2.x、4.3.x、4.4.x、4.5.x、4.6x、4.7.x 、4.8.x、4.9.x(C 14 標準に関するGNU GCC 拡張はサポートされていません)・Green Hills MULTI for Linux x86 Native v4.2.xLinux(64bit)●Linuxカーネル2.6以上●glibc 2.4以上●x86互換プロセッサ●コンパイラ ・GNU gcc/g 3.3.x、3.4.x、4.0.x、4.1.x、4.2.x、4.3.x、4.4.x、4.5.x、4.6x、4.7.x、4.8.x、4.9.x(C 14 標準に関するGNU GCC 拡張はサポートされていません)・Green Hills MULTI for Linux x86 Native v4.2.xSolaris※Solarisをお使いの方はお問合わせください。システム構成●CPU:2.0GHz以上、マルチCPU構成を推奨●メモリ:メモリ:4GB以上(推奨:8GB以上)共通項目●クロスコンパイラ(記載されている以外のコンパイラについては、お問合わせください。)・ルネサス エレクトロニクス社(ホスト環境はWindowsに対応) ・SuperH RISC engine C/C Compiler V5.1(静的解析のみ)、V9.03、V9.04(C については限定サポート)・M16C/R8C C Compiler 5.4x(静的解析のみ)・RX C/C Compiler 2.2x(静的解析のみ)※下記のルネサス エレクトロニクス社製コンパイラについてはお問合わせ先までご連絡ください。・R32C/100 Series C Compiler v1.02・RH850 Family Compiler v1.00.01・RL78(78K0R)C Compiler v2.70・H8S, H8/300 SERIES C/C Compiler v7.00(静的解析のみ)・V850 Optimizing C Compiler v3.46(静的解析のみ)・M32R Family C/C Compiler v5.01(静的解析のみ)・78K0 C Compiler v4.30(静的解析のみ)・サイプレス セミコンダクタ社(ホスト環境はWindowsに対応)・FR Family SOFTUNE C/C Compiler V6・Green Hills Software社・Green Hills Software Compiler for PPC v3.5、v4.0.x、v4.2.x、v5.0.x、v2013.1.x・Green Hills Software Compiler for V850 v3.4、v5.1.x・アーム社・ARM RealView 2.2、4.0、4.1(ホスト環境はWindowsに対応)・ARM RealView 3.0、3.1(ホスト環境はLinuxに対応)・ARM Developer Suite 1.2(ホスト環境はWindows、Linux、Solarisに対応)・ARM Compiler 5.0(ホスト環境はWindows、Linuxに対応)・ARM GNU GCC 4.5(C 11 標準に関する GNU GCC 拡張はサポートされていません)・テキサス・インスツルメンツ社 ・Windows・TI TMS320C6x C/C Compiler v5.1(静的解析のみ)、v6.0、v6.1、v7.3、v7.4・TI TMS320C2000 C/C Compiler v4.1(静的解析のみ)、5.2、6.0・TI MSP430 C/C 3.2、4.0・TI TMS470 C/C Compiler v4.9・TI ARM C/C Compiler v5.0.x(静的解析のみ)、v5.1.x・TI TMS320C55x C/C Compiler v4.3・TI TMS320C54x C/C Compiler v4.2(静的解析のみ) ・Linux ・TI TMS320C6x C/C Compiler v6.1 ・Solaris ・TMS320C2x/C2xx/C5x Version 7.00(静的解析のみ) ・TMS320C6x C Compiler v4.00、v4.3、v5.1(すべて静的解析のみ)・ウインドリバー社・Wind River GCC 2.9※、3.3.x、3.4.x、4.1.x、4.3.x(ホスト環境はWindows、Linux、Solarisに対応)※C test 10.xではWindowsのみ ・Wind River DIAB 5.5 − 5.9(ホスト環境はWindows、Linux、Solarisに対応) ・Wind River EGCS 2.90(ホスト環境はWindowsに対応) ・Wind River GCC 3.3.x for VxWorks 653(ホスト環境はWindowsに対応、静的解析のみ)・マイクロソフト社(ホスト環境はWindowsに対応) ・Microsoft Visual C for Windows Mobile 8.0、9.0 ・Microsoft Embedded Visual C 4.0・アルテラ社(ホスト環境はLinuxに対応) ・Nios GCC 2.9(静的解析のみ) ・Nios II 5.1 GCC 3.4(静的解析のみ)・Cosmic Software社(ホスト環境はWindowsに対応) ・Cosmic Software 68HC08 C Cross Compiler v4.6.x(静的解析のみ)・eCOSCentric社(ホスト環境はLinuxに対応) ・eCOSCentric GCC 3.4.x(静的解析のみ)・GNU(ホスト環境はWindows、Linux、Solarisに対応)・GNU gcc/g 2.95.x − 4.9.x(C 14 標準に関するGNU GCC 拡張はサポートされていません)・IARシステムズ社(ホスト環境はWindowsに対応)・IAR Compiler for ARM v5.3x、v5.4x、v5.5x、v6.1x(C 言語のみ)、v6.3x(C 言語のみ)、v6.6x、v7.4x・IAR Compiler for MSP430 v4.2(静的解析のみ)、v5.3(C 言語のみ)、v5.4x(C 言語は静的解析のみ)、v6.1(静的解析のみ)・IAR Compiler for RX v2.5x・IAR Compiler for STM8 v1.4x(静的解析のみ)・Keil(ホスト環境はWindowsに対応)・ARM/Thumb C/C Compiler RVCT3.1 for uVision、ARM C/C Compiler RVCT4.0 for uVision、ARM C/C Compiler RVCT4.1 for uVision・ARM C/C Compiler 5.0 for uVision・Keil C51 Compiler v8.18(静的解析のみ)・Keil C166 7.0(静的解析のみ)・QNXソフトウェアシステムズ社(ホスト環境はWindowsに対応)・QNX GCC 2.9.x、3.3.x、4.2.x、4.4.x・STマイクロエレクトロニクス社(ホスト環境はWindowsに対応)・STMicroelectronics ST20(静的解析のみ)、STMicroelectronics ST40(静的解析のみ)・TASKING社・Altium TASKING VX-toolset for TriCore C/C Compiler v2.5(C言語のみ)、3.3、3.4、3.5、4.0・Altium TASKING 80C196 C Compiler v6.0(ホスト環境はWindows、Solarisに対応、静的解析のみ) ・Altium TASKING classic compiler for C166/ST10 v6.0(静的解析のみ)・Freescale社(ホスト環境はWindowsに対応) ・CodeWarrior ANSI-C/cC Compiler 5.0.x for HC12(静的解析のみ) ・Freescale C/C Compiler v5.1 for Embedded ARM(静的解析のみ)・Microchip社(ホスト環境はWindowsに対応) ・MPLAB C Compiler for dsPIC v3.2x(静的解析のみ) ・MPLAB C32 Compiler for PIC32 v2.0x(静的解析のみ)・ナショナルインスツルメンツ社(ホスト環境はWindowsに対応)・LabWindows/CVI 2013 Clang C/C Compiler v2.9、v3.3 for Win32(静的解析のみ) ・LabWindows/CVI 9.0(静的解析のみ)・アナログ・デバイセズ社(ホスト環境はWindowsに対応) ・Analog Devices C/C Compiler 7.0 for ADSP SHARC(静的解析のみ) ・Analog Devices C/C Compiler 7.0 for ADSP TigerSHARC(静的解析のみ)・メンター・グラフィックス社(ホスト環境はWindowsに対応) ・CodeSourcery Sourcery G Lite 2009q1-203(静的解析のみ)・エンバカデロ・テクノロジーズ社(ホスト環境はWindowsに対応) ・Borland C Compiler 5.6.x for Win32(静的解析のみ) ・Embarcadero C Compiler 6.2x, 6.9x for Win32(静的解析のみ)●C testをプラグインできる統合開発環境・Eclipse for C/C Developers 3.6、3.7、3.8、4.2、4.3、4.4、4.5・Visual Studio 2005、2008、2010、2012、2013、2015・Wind River Workbench 2.6、3.0、3.1、3.2、3.3・ARM RealView Development Suite 3.0、3.1、4.0、4.1・ARM Development Studio 5(DS-5)・QNX Momentics IDE 4.5(QNX Software Development Platform 6.4)、4.7(QNX Software Development Platform 6.5)・ARM Workbench IDE for RVDS 3.0、3.1、3.2・Texas Instruments Code Composer Studio IDE v.4.x、v.5.x、v.6.0・SOFTUNE Development Tools for Eclipse V01L02※マネージドコードの解析には対応していません。※Eclipseにプラグインする場合は、以下の環境が必要です。Eclipse IDE for C/C Developers 3.6、3.7、3.8、4.2、4.4、4.5およびEclipseがサポートするJava Runtime Environment(JRE)●C testにインポートできるプロジェクト・ARM Developer Suite・Green Hills MULTI・IAR Embedded Workbench・Keil uVision・Microsoft eMbedded Visual C ・Microsoft Visual Studio・Renesas High-performance Embedded Workshop・Texas Instruments Code Composer・Wind River Tornade◎機能安全規格 IEC 61508、ISO 26262、IEC 62061モデルでの設計をベースにコーディングを行った場合、モデル上のシミュレート結果と実装コードの実行結果が同じであるとは限りません。そのため、実装コードの実行結果とモデル上での実行結果が一致しているか検証(back-to-backテスト)する必要があります。C testでは、Simulinkで作成したテストベクタを利用して、back-to-backテストが行えます。ソースコードの変更に対してコンパイル、テストなどを継続的に行うCI環境にC testを統合することにより、静的解析及び動的解析プロセスを自動化でき、早期のバグ発見、対応を可能にします。back-to-backテストの実現CI(継続的インテグレーション)環境における継続的テスト/ビルドの実施機能安全規格対応ルールセット◎医療機器安全規格 IEC 62304、IEC 60601-1MATLABSimulink※認証取得を目的としてC testをご利用になる場合は、お問い合わせください。システムデザインソフトウェアアーキテクチャデザインソフトウェア安全要求の仕様化アイテム統合とテストソフトウェア統合とテストソフトウェアユニットテストソフトウェア安全要求の検証アイテムテストテストフェーズ検証ソフトウェアレベルの製品開発の開始ソフトウェアテストテストフェーズ検証テストフェーズ検証C testのカバー範囲ソフトウェアユニットデザインと実装ソフトウェアテストソフトウェアテストテストフェーズ検証for IEC 61508for ISO 26262for IEC 61508for ISO 26262TÜV SÜD社によるISO 26262 / IEC 61508ツール認証を取得済み静的解析、単体テスト、フロー解析、実行時メモリエラー検出を自動実行ソフトウェアの品質向上と効率的な開発の実現をサポート※青字はC test 9.6.1でのみサポート ※緑字はC test 10.2.2でのみサポートIEC 61508およびISO 26262は、ツールが開発プロジェクトで使用するのに妥当なものであるかを証明できなければならないと定めています。もし、この証明をユーザーが行うとすると、ツールの使用実績や実行結果などのドキュメントを用意し、第三者に検証を依頼する必要があり、手間や費用がかかります。C testを使えば、ユーザー自身がツールの認証を行う必要はありません。IEC 61508およびその派生規格であるISO 26262(自動車)、IEC 62061(FA)などの機能安全規格への準拠が調達や輸出の要件として求められる動きが加速しています。C testは幅広い検証機能によって機能安全規格の認証取得を支援します。要求される技法ステートメントカバレッジ、分岐カバレッジ、MC/DC構成済みのルールセットを利用することで、規格への準拠プロセスを短縮できます。《機能安全規格準拠に役立つルールセット》ISO 26262ISO 26262に準拠する際に推奨されるルールのセットです。HISソースコードメトリクスに関するルールHIS(Herstellerinitiative Software)はドイツの自動車メーカーによる団体で、車載システムの設計や品質保証に関する標準を策定しています。MISRA-C、MISRA-C 2004、MISRA-C 2008、MISRA-C 2012 に関するルールMISRA(Motor Industry Software Reliability Association)が作成した「自動車産業におけるCプログラミングガイドライン」をもとに作成されています。医療機器のソフトウェア安全に関する国際規格IEC 62304、およびプログラマブル電気医用システムを対象に含みIEC 62304を参照するIEC 60601-1への準拠は、EU諸国や米国に医療機器を輸出するメーカーにとって緊急の課題です。C testの総合的な検証機能やルールセットを利用すると、これらの規格が要求する高い品質水準を満たすソフトウェアの開発プロセスを短期間で構築できます。《医療機器ソフトウェア安全規格対応ルールセット》FDA C Phase 1-3(米国食品医薬品局)に関するルールFDA(米国食品医薬品局)が定めた、医療機器ソフトウェアならびに医療機器製造に使用するソフトウェアの検証原則に基づくルールです。《例:ISO 26262の要求事項/技法と対応するC testでの検証方法(抜粋)》8.4.5 ソフトウェアユニットの実装の検証方法9.4.1 単体テスト実行に関する一般的な情報9.4.4 テストケースの完全性を実証する方法10 ソフトウェアの統合とテスト − 統合テスト環境に関する要求C testの検証方法静的フロー解析コーディングルールチェック要求される技法制御フロー解析静的コード解析要求される技法要求ベースのテストフォールト注入テストC testの検証方法ユーザー定義のテストケース関数スタブを使用してフォールトの状態を作り出すC testの検証方法実機とシミュレーターでの実行時エラー検出要求される技法単体テストのテスト環境は可能なだけターゲット環境に一致させるC testの検証方法カバレッジ計測IEC 61508/ISO 26262 準拠第三者試験認証機関による認証取得済みC testによるソフトウェア実装・検証支援規格コンプライアンスIEC 61508およびISO26262は、システムに求められる安全水準に応じて、コーディング標準に対する適合性の検証、単体テスト、カバレッジの計測などの安全対策をとるよう定 めています 。C testは、これらの検証の自動化や結果レポートの出力を可能にし、認証準拠の負担を軽減します。・ソースコードの統合・テストの自動化・定期的なビルドによるコンパイルエラー、バグの早期発見・さまざまなプラグイン、ツールとの連携コーディング/テスト③結果レポート①新規ソースまたは変更をコミット ②自動ビルドとテスト構成管理サーバーSVN・VSS・AccuRev等CIサーバー(Jenkinsなど)開発者側 自動テスト環境継続的に実施CIツールを利用した運用例ビルドツールC testhttp://www.techmatrix.co.jp/quality/download/index.html#ctestC test無料体験版ダウンロード【総販売代理店】テ ク マ ト リ ッ ク ス 株 式 会 社システムエンジニアリング事業部ソフトウェアエンジニアリング営業部【U R L】http://www.techmatrix.co.jp【E-mail】parasoft-info@techmatrix.co.jp本社:〒108-8588 東京都港区三田3-11-24(国際興業三田第2ビル)TEL.03(4405)7853 FAX.03(6436)3553
Page 2:CppUnitのソースコードの図[IN].b入力値 出力の期待値テストケースセットスタブからの戻り値123456712345670000000111111111111112468101214[IN].c [IN].a [OUT]_return [out].a stub_func_returnExcel等で管理されているテストデータテスト実行動的解析 組込みソフトウェア開発での利用◎単体テスト静的解析◎コーディングルールチェック出力されるレポートには、採用しているコーディングルールやエラー発生箇所が記載されるのはもちろんのこと、実行したテストのパラメーターやカバレッジ計測結果も詳細に記載されます。カバレッジ達成率が単体テスト終了の指標となっている場合や、規格認証を取得するうえで採用しているコーディングルールが、守られていることを証明する場合などにも利用できます。C testのコードレビュー機能を使うと、コード作成者とレビューアーが違う拠点にいたとしても、自分の開発環境上でレビューを実施することが可能です。レビュー依頼や、レビュー結果の通知といったワークフローが自動化されているため、開発者に余計な負担をかけません。◎カバレッジ解析◎実行時メモリエラー検出HTML、PDF、XML形式のレポートを作成◎レポート生成コーディング ルール カテゴリ(抜粋)シミュレーター ターゲット機ホスト/開発環境テストの進捗状況を評価したり、追加のテストケースが必要でないかを評価したりする指標として役立つ8種類のコードカバレッジを計測し、テスト終了後にビューやレポートに結果を表示します。C testをインストールしたホストマシンだけでなく、実機(ターゲット機)やマイコンベンダーが提供するシミュレーター上でも単体テスト、カバレッジ計測(単体テスト時とアプリケーション実行時)、および実行時メモリエラー検出を実行できます。ターゲット環境にテスト実行用モジュールを転送し、実機上でテストを実行した後、結果をホストマシンのC testのGUIにインポートするといった一連の作業をクリックひとつで自動実行します。すべてのライセンスで本機能をご利用いただけます。静的解析では検出が困難な、アプリケーション実行時に発生するメモリ破壊・メモリリーク・ポインターエラーなどを単体テスト実行時、またはアプリケーション実行時に検出します。単体テスト実行時にカバレッジを計測し、ソースコードを色分けして、実行/未実行を表示します。また、アプリケーション実行時のカバレッジも計測・表示できます。コーディングルール生成ツールRuleWizardテストのエビデンスとしての利用ISO 26262準拠に有効なルールHIS ソースコードメトリクスに関するルールFDA C Phase 1-3(米国食品医薬局)に関するルールMISRA-C、MISRA-C 2004、MISRA-C 2008、MISRA-C 2012に関するルールOWASP TOP10、PCIDSS、CWE/SANS、CERT C、最も危険なプログラミングエラーTOP25など、セキュリティに関するルール約2,000個のコーディングルールでソースコードに潜む問題点を指摘します。ソフトウェアの品質保証や機能安全、セキュリティなどに有効なルールが用意されています。エラーやクラッシュを引き起こす可能性のあるコードをコーディング時に検出・修正することにより、結合テスト以降のテスト・デバッグ作業を軽減できます。Test Case Editorは、GUIの操作のみでテストケースの作成やスタブの振る舞いの設定ができます。単体テスト時の最大の課題であった「テストケースのコーディング」を行うことなくテストケースを作成することが可能です。さらに、ソースコードを直接調整しなければならなかったテストケース、スタブのメンテナンス作業も、GUIによる簡単な操作だけでおこなうことができます。ユーザー定義コーディングルールを作成する「RuleWizard」が搭載されています。視覚的にコーディングルールを作成したり、サンプルソースからコーディングルールを自動生成することが可能です。C0、C1、C2、MC/DCを含む8種類のカバレッジを計測検出困難なエラーを自動的に検出C testは実機・シミュレーター上でアプリケーションを実行すると同時にカバレッジ計測が可能です。テストケースの作成漏れ、テストの実行漏れを効率的に確認することができます。アプリケーション実行時にカバレッジを計測カバレッジをわかりやすくレポートホストマシンで、実機で、シミュレーターで、単体テスト・カバレッジ解析・実行時メモリエラー検出を自動実行C testでは、他ツールとの連携や、既存のテスト資産の再利用が可能です。※C 言語については、C言語と同等のエラーのみ検出可能です。・不正なポインターへのアクセス ・不正なポインターの解放 ・メモリ破壊 など検出するメモリエラーの種類NULLポインター参照未初期化メモリメモリリークダングリングポインター使用アプリケーション実行時のカバレッジ計測C testのシミュレーター/実機でのテスト実行メカニズムでは、カバレッジ計測を伴うテストを実行すると、ソースファイルのコピーにカバレッジ計測用コードが埋め込まれます。ただし、この埋め込みコードはテスト対象コードの構造を変えないので、コードの出力に影響はありません。カバレッジ計測用コードを埋め込まないというオプションを指定した場合は、実際にターゲットに組み込まれるコードでテストを行うことができます。コードの構造を変えずに入出力のテストを実行可能カバレッジ計測 シミュレーター/実機テスト実行結果は同じカバレッジ計測コードINa=0a=1b=0b=1OUTz=0z=2INa=0a=1b=0b=1OUTz=0z=2ソースファイル(コピー)ソースファイルONOFF入力値、期待値、スタブの戻り値をインポートして、複数のテストパターンを一括実行。CSV、データベースなどにも対応しています。以前の開発で作成したテストケースを無駄にしたくないCppUnitなど既存のテストケースをC testで実行。カバレッジを取得することも可能です。Excelでテストデータを作成/管理したいC testがレポートするカバレッジ・行カバレッジ ・ブロックカバレッジ ・ステートメントカバレッジ(C0:命令網羅率)・パスカバレッジ ・判断文カバレッジ(C1:分岐網羅率)・単純条件カバレッジ(C2:条件網羅率)・MC/DC(Modified Condition/Decision Coverage) ・関数カバレッジテスト結果をHTML、PDF、またはXML形式のレポートとして出力できます。また、お好みのフォーマットにカスタマイズすることも可能です。コーディングせずにテストケースを作成できるTest Case Editorテストドライバー、スタブ、テストケースを自動生成し、単体テストを自動実行します。8種類のコードカバレッジを計測。テストの妥当性を確認できます。単体テスト時、アプリケーション実行時にメモリ領域を監視し、実行時メモリエラーを検出します。同時に実行時のカバレッジ計測を行え、ターゲット環境でもエラーの検出が可能です。MISRA-CやEffective C などを含む約2,000個のコーディングルールでソースコードを検証。クラッシュを引き起こす可能性のあるコードを検出します。パスの処理フローを静的に検証し、メモリリークやバッファーオーバーフローを引き起こす可能性のあるコードを検出します。◎静的フロー解析静的フロー解析は、ソースコードの処理フローを解析します。実際にコードを実行することなく、メモリリークなどの問題があるパスを指摘します。◎静的フロー解析メモリリークリソースリークメモリの解放漏れゼロ除算未初期化メモリの使用NULLポインターの間接参照検出可能な問題点テストケースの準備が不要複数の関数やファイルをまたがるパスも解析可能テストで見つけにくいバグを早期に検出ソースコードに潜むバグを発見use_person. cNULL ポインターの間接参照Person. cファイルをまたがる問題を検出関数の呼び出し関数のリターンNULL の代入NULLの代入NULLポインターの間接参照void init(){Person* createPerson(char* ref){}}テスト結果レポート 実行されたテストケースの詳細◎コードレビュー開発者レビューアー※『コードレビュー』機能を使用するには、Server Editionが必要です。様々な環境で静的解析・動的解析を実施することが可能ワンクリックでテスト実行からレポート出力までを自動実行単体テストの自動実行・実行時例外や仕様に反する戻り値の検出コードカバレッジの計測実行時メモリエラーの検出・メモリリーク、メモリ破壊、配列の範囲外へのアクセスなどの検出アプリケーション実行時のカバレッジ計測単体テストの準備・テストケースの作成・スタブの作成テスト結果参照/レポート生成・テスト結果の参照・コードカバレッジの参照・実行時メモリ解析結果の参照・HTML、XMLレポートの生成テスト実行用モジュールを転送テスト結果を転送配列の範囲外のアクセスバッファーオーバーフローデッドコード不適切な排他制御セキュリティの脆弱性 などポインタ演算による境界外アクセス整数オーバーフローデッドロックイテレータ範囲外アクセスキャッチされない例外コンテナの不適切な使用書式に関するルール重複コードに関するルールメトリクス解析ルールバグの可能性に関するルールメモリおよびリソース管理に関するルール移植性に関するルールSTL ベストプラクティスに関するルールIPA/SEC「コーディング作法ガイド」に関するルール など◎単体テスト ◎実行時メモリエラー検出GUIで簡単に管理・コントロール コーディング不要・テストケースの設定テストパターン(入力値/期待値など)の設定スタブの振る舞いの設定外部テストデータのインポート など解析Parasoft DTPとは、テストツールの実行結果や、構成管理および変更管理、ビルド管理などの情報を統合し、独自のリスク分析アルゴリズムによって導き出されたビジネスリスクをリアルタイムに視覚化する管理プラットフォームです。C testとParasoft DTPを連動させることで、テスト実行結果が自動的に集計・グラフ化されます。これにより、バグの発生・修正状況や、発生しやすいバグの傾向など、プロジェクトが抱える品質面での課題の分析に役立てることが可能です。・静的解析ツール・動的解析ツール・構成管理ツール・バグ管理ツール・タスク管理ツールetc…IDEへのインポート・修正担当者にタスクをアサインフォーマットに依存せず必要なデータを自動収集開発者・管理者品質保証・開発支援それぞれにわかりやすい形式にデータを自動加工解析データの可視化・分析様々なツールのデータを可視化 データを分析し、リスクを把握 リリースできるかを簡単に確認Parasoft DTP◎品質リスクを可視化するプラットフォーム「Parasoft DTP」との連携・スタブの設定渡された引数に応じた戻り値の設定何回コールされたかの確認機能 などテストコードスタブコードソースコード C testでビルド アプリケーションを実行Test Case Editor生成◎コーディングルールチェック外部ファイルに格納されているテストケースやCppUnitテストケースの利用