C++test10.4.1の新機能・改善点

静的解析機能の大幅強化「C++test 10.4.1」の新機能のご紹介

MISRA C:2012に加えCERT C コーディングスタンダード(Rule)を完全対応

C++test 10.4.1のバージョンアップで、前バージョンで追加されたMISRA C:2012に加え、開発の初期段階からのセキュリティ対策として注目が高まっているセキュアコーディングへの対応が強化されたことにより、安全なソフトウェアの開発をさらに強力に支援することが可能になりました。

C言語向けセキュアコーディングのガイドラインCERT CコーディングスタンダードのRuleに「完全対応」。また、CERT C++コーディングスタンダードや、AUTOSAR C++14コーディングガイドラインのルールが追加されています。 また、動的解析では、スタブ機能のフレームワークを一新。スタブの管理、スタブの振る舞いの設定が簡略化され、テストケース作成工数をより効率化できるようになりました。

C++test 10.4.1と同時にリリースされるParasoft DTP 5.4.1では、前バージョンで追加されたMISRAコンプライアンスパックに加え、CERT C/C++コーディングスタンダード、AUTOSAR C++14への遵守状況の確認ができるコンプライアンスパックが追加されました。プロジェクト全体のステータスをリアルタイムに表示できます。さらにコンプライアンスパックレポートをPDF形式で出力できるように拡張され、MISRA Compliance:2016の準拠に関する文書を容易に作成できるようになりました。

C++test 10.4.1の新機能・改善点

CERT C(Rule)完全対応をはじめとする静的解析の大幅強化

CERT Cは、脆弱性につながる恐れのある危険なコーディング作法や未定義の動作を削減することを目的として作られたC言語のセキュアコーディングスタンダードです。CERTC コーディングスタンダードは、従うべき「Rule」と、それほど重要ではない、または確実な検出が難しい「Recommendation」から構成されています。このたびのバージョンアップでは、CERT CコーディングスタンダードのRuleに完全対応しました。CERT Cコーディングスタンダードを採用することで、より品質が高く、堅牢なソフトウェアの開発が可能になります。また、C++言語向けCERT C++コーディングスタンダードやAUTOSAR C++14コーディングガイドラインも追加されました。前バージョンから1,525ルールが追加され、静的解析における総ルール数は3,790 ルールとなりました。
※コンプライアンス関連機能の使用には専用のライセンス(有償)が必要です。

フロー解析機能のルールが105種類に拡張

フロー解析機能は、プログラムを静的に解析して、プログラム実行時に発生し得る問題を検出する機能です。非常に複雑なアプリケーションでも、複数のファイル、メソッドにまたがるパスを自動的にトレースし、「NULLポインターの間接参照」や「バッファオーバーフロー」などプログラムの動作に致命的な影響をもたらすバグを早期に発見します。
このたびのバージョンアップでは、フロー解析機能のルールが25種類追加され、合計105種類になりました。これにより、問題として顕在化していなかった欠陥や、システムテストなどの後工程で見つかっていたような欠陥を、コーディングフェーズで瞬時に見つけることができるようになり、手戻りのリスクを軽減します。

テストケースエディターの改善

単体テスト機能では、スタブコールバックフレームワークが実装されました。スタブ機能のフレームワークや、テストケースエディターのスタブ設定が見直され、スタブごとの管理が可能になりました。これにより、スタブAPIの独自記法の習得が不要となり、さらに複数のテストケースで共有できるようになりました。改善されたテストケースエディターの利用で、スタブの管理工数の削減、テストケース作成工数の削減が可能になります。

C++test:スタブの管理工数の削減、テストケース作成工数の削減

単体テスト:テストケースエディターの改善

テスト実行時の追加情報レポーティング機能

セーフティクリティカルなソフトウェア開発において、ツールが作成するレポートなどのエビデンスは重要な役割を持ちます。このたびのバージョンアップでは、テスト対象ファイル名、テストハーネスのビルドに使用したツールチェーン、テストケースの事前条件/事後条件などのテスト実行に関する詳細な追加情報を出力できるようになりました。これによりテスト結果の文書作成のコストをさらに削減できます。

テスト実行時の追加情報レポーティング機能

レポーティング機能

サポート環境の追加

GNU GCC 7.x/8.x、Clang C/C++ Compiler v6.0、ARM Compiler 6.9、Green Hills Software Compiler V850 v.2017.5.x(RH850含む)など30以上のコンパイラが追加されました。また、Wind River Workbench 4.0、Texas Instruments Code Composer Studio 7.4/8.0へのプラグインがサポートされ、開発環境上でテストを行えるようになり、開発者は生産性を落とすことなくテストツールを利用できるようになりました。

Parasoft DTP 5.4.1 の新機能・改善点

フロー解析トレースの強化

フロー解析におけるデータフローのシミュレート結果がより詳しく表示されるようになりました。「なぜ条件演算子でtrueと判断されたのか」・「なぜ違反が発生しているか」の理解や、「違反の重要性」の判断が容易になりました。

静的解析:フロー解析トレースの強化

Parasoft DTP連携:フロー解析トレースの詳細表示

違反エクスプローラ上での抑制に対応

Parasoft DTPに登録された違反において、修正不要と判断された違反を違反エクスプローラ上から抑制できるようになりました。これにより次回以降の静的解析から違反として検出されなくなります。抑制はParasoft DTP内部で保持されるため、ソースコードに抑制のための修正を入力する必要ありません。また、プロジェクト共通の設定となるため、各開発者のローカルでのテストでも抑制が反映されます。

コンプライアンスの遵守を促進するパッケージの追加

コンプライアンスパッケージを導入することにより、C++testによる静的解析の結果からCERT C/C++コーディングスタンダード、AUTOSAR C++14コーディングガイドラインに則った遵守サマリーレポートや逸脱のレポートをいつでも確認できるようになります。ガイドラインの遵守状況の説明責任を果たすことが容易になるだけでなく、未遵守箇所を早期に特定し必要な措置を講ずることにより、欠陥のあるソフトウェアに関連するビジネスリスクを排除することが可能になります。
※コンプライアンス関連機能の使用には専用のライセンス(有償)が必要です。

CERT C 遵守用ダッシュボード

CERT C 遵守用ダッシュボード

CERT C/C++コーディングスタンダード、AUTOSAR C++14コーディングガイドラインに則った順守サマリーレポートの出力

コーディングガイドラインに則った順守サマリーレポート

バージョンアップサービス

お問い合わせ先までご連絡下さい。
 
 

 

静的解析・単体テストツール C++testに
関するお問い合わせ

  • テクマトリックス株式会社
    東京本社

    ソフトウェアエンジニアリング事業部

    03-4405-7853

メールでのお問い合わせ
parasoft-info@techmatrix.co.jp

CONTACT

製品についてやテクマトリックスについてなど、
こちらよりお気軽にお問い合わせいただけます。