カバレッジマスターwinAMS

Windows開発環境向けユニットテストツール

組込みソフト開発向け単体テスト
"みんなが使っている"カバレッジ計測ツール

  • 対象業界:自動車/FA/家電/医療/OA等の業界
  • 対象部門:組込みソフトウェア開発
  • 規  格:ISO 26262 / IEC 61508

組込みソフトウェア開発の課題

  • 組込みソフトウェア開発経験の浅い技術者が多く、ソフト品質の確保が難しい
  • 再利用性したソフトウェアの中にバグが入っている可能性がある
  • コーディング後の単体テスト実施に大きな工数がかかっている

単体テスト自動化ツール
カバレッジマスターwinAMSが品質の課題を解決します。

機能安全規格ISO 26262 / IEC 61508に準拠し、ステートメント、ブランチ、MC/DC、関数コールなどのコードカバレッジ計測可能な組込みソフト向けC/C++ソフトウエア単体テストツールです。マイコンシミュレータを内蔵し、コンパイルされたオブジェクトコードを実行して単体テストを行います。一般の単体テストツールにありがちなCソースの論理レベルでの単体テストに留まらず、組込み特有のマイコンへの実装に依存した問題点を含めた、マイコンコードに最も忠実で信頼性の高い単体テストを実施します。(※C++ 11/14対応。詳細は下記参照)

カバレッジマスターwinAMS

実機コードとCSVテストケースを使用したテストの流れ

クロスコンパイラにより生成された実機コードの実行と、単体テストのテストケースの作成の流れを示しています。

実機コードとCSVテストケースを使用したテストの流れ
  • 特徴1

    マイコンに最も忠実な 「実機コードベース」の単体テストを実行、効率化へと導く

    「カバレッジマスターwinAMS」は、クロスコンパイラで生成した「実装マイコンコード」をそのまま使用して、マイコンシミュレータで単体テスト実行を行います。一般の単体テストツールにありがちなCソースの論理レベルでの単体テストに留まらず、組込み特有のマイコンへの実装に依存した問題点を含めた、マイコンコードに最も忠実で信頼性の高い単体テストを実施します。

  • 特徴2

    C0、C1、MC/DCカバレッジに加え 結合フェーズの関数/コールカバレッジ計測をフルサポート

    コードカバレッジ計測の標準であるC0(Statement Coverage)、C1(Branch Coverage)、機能安全認証で要求されるMC/DC(Modified Condition Decision Coverage)をフルにサポートし、さらに機能安全(ISO 26262)の結合テストで要求される、関数/コール(Function/Call)カバレッジ計測もサポートしています。

  • 特徴3

    ホワイト/ブラックボックス観点からテストデータを効率的に生成

    単体テスト受託サービスを通じて確立した単体テストデータ設計手法を使用し、関数の要求仕様からのテストデータ設計を効率的に行う「テストデータ分析エディタ」を搭載。自動生成されたテストデータと、要求仕様書とを照らし合わせながらテスト設計を行う事で、要求仕様確認であるブラックボックステストと、コードの構造確認であるホワイトボックステストを効率的に進めることが出来ます。

  • 特徴4

    ツール内でカバレッジ網羅テストのデータ作成&実行/確認をシームレスに実施

    「テストデータジェネレータ」により関数単体のテストデータの生成率が向上。さらにサブ関数を含めた結合レベルテストデータの自動生成が可能となりました。また自動生成未達箇所(ソース行)の確認と、テストデータ手動追加をツール内で実行出来るため、カバレッジ網羅テスト作業の更なる効率化を実現します。

  • 特徴5

    Back to Backテストを効率的に実施するためのオプションをご用意

    モデルベース開発に求められるBack to Backテスト(以下BtoBテスト)も、『カバレッジマスターwinAMS MBTオプション』があれば効率的に実施が可能です。 カバレッジマスターwinAMSの標準機能に加え、BtoBテストを効率的に実施するためにMILS実行操作やレポート出力など7つの機能を提供します。BtoBテスト自動実行環境の構築を容易にし、BtoBテストにかかるテスト工数の削減に貢献します。
    『カバレッジマスターwinAMS MBTオプション』紹介ページはこちら

カバレッジマスターwinAMSが品質の課題を解決します

  • 機能1

    「コードカバレッジ測定」機能

    テスト対象の関数ごとに作成するテストデータ(CSVファイル)により、関数のテスト網羅度を示す指標、コードカバレッジを自動計測します。

    ・ C0: ステートメントカバレッジ
    ・ C1: ブランチカバレッジ
    ・ MC/DC
    ・関数カバレッジ
    ・コールカバレッジ

    01

    「コードカバレッジ測定」機能
  • 機能2

    関数単体テストデータ自動生成/編集エディタ機能

    プログラム解析ツール「CasePlayer2」との連携により、構造カバレッジ(C1、MC/DC)計測のためのテストケースを自動生成します。

    【if、switch、for、whileなどの条件分岐構造解析】
    C1、MC/DCを100%網羅して実行するためのテストケースを自動生成します。

    【データ作成ビュー】
    検証対象の関数に含まれる条件文(if文、switch文など)をリストアップ。条件文に設定された境界値の情報から、カバレッジに必要なデータを自動生成します。

    02

    関数単体テストデータ自動生成/編集エディタ機能
  • 機能3

    テストデータ分析エディタ機能

    専用エディタで仕様確認テストデータ作成を効率化

    ・ソースコードからの自動生成を補助的に使用し、
     仕様観点データを作成
    ・仕様網羅を考慮した自由な組み合わせで、
     テストデータを作成

    自動生成されたテストデータと要求仕様書を照らし合わせることで、要求仕様確認であるブラックボックステストと、コードの構造確認であるホワイトボックステストを効率的に進めることが出来ます。

    03

    テストデータ分析エディタ機能
  • 機能4

    テストデータジェネレータ機能

    ・ホワイトボックス観点から自動生成率の高いC1、
     MC/DCカバレッジテストデータを作成
    ・サブ関数を含めた結合レベルテストデータを自動生成
    ・自動生成未達箇所(ソース行)の確認
    ・テストデータ手動追加

    これらをワンツールで実行し、カバレッジ網羅テスト作業の効率化を実現します。

    04

    テストデータジェネレータ機能
  • 機能5

    ソース参照・解析作業を効率化するプログラム解析ツール「CasePlayer2」との連携

    CasePlayer2」の生成するフローチャートやモジュール構造図(関数呼び出し構造図)とリンクして、単体テストのためのソースコード解析作業に利用することができます。検証対象の関数が使用する外部変数の自動検索機能により、入力条件となる変数の設定作業を効率化し、また変数指定忘れ、漏れと言ったヒューマンエラーを防ぐことができます。

    05

    CasePlayer2との連携
  • 機能6

    CLI(Command Line Interface)機能によりテスト実行工程を自動化

    テストの手順を記載したスクリプト(Windows標準のバッチコマンド )を使用して、カバレッジマスターを制御、操作することでテスト管理、実行を容易に行う事が可能です。
    ソースコードの修正、追加、変更箇所の影響を確認する「レグレッションテスト」や、組込みソフト開発一般の流用開発、自動車分野でのAUTOSARなどのプラットフォーム化により、同一ソースコードを多品種(車種)に実装する際に行われる「同テストの繰り返し」を、人のUI操作を介在すること無く、完全自動化します。

    06

    CLI(Command Line Interface)機能によりテスト実行工程を自動化
  • 機能7

    「関数カバレッジ、コールカバレッジ」計測機能

    結合レベルでの構造カバレッジ計測機能をサポートしています。自動車機能安全規格ISO 26262の結合テスト(Part.6-10)が要求する、指定したソースファイル内の関数が網羅されて実行されたかを示す「関数カバレッジ」、指定した関数内のサブ関数コールが網羅されてコールされたかを示す「コールカバレッジ」の計測が可能です。

    【関数カバレッジ】
    機能コンポーネントの最上位関数にテストケースを与えて関数を駆動することで、機能コンポーネントを構成するサブ関数を網羅して実行したかを計測します。

    【コールカバレッジ】
    テスト対象の関数にテストケースを与えて関数を駆動することで、その関数内のサブ関数コール位置を網羅して実行(関数コール)したかを計測します。

    07

    「関数カバレッジ、コールカバレッジ」計測機能
  • 機能8

    カバレッジマスターwinAMSと「PLAS-Qlite」のツール連携で机上でのパフォーマンス検証を実現

    カバレッジマスターwinAMSで利用可能なマイコンシミュレータを使用し、「PLAS-Qlite」と連携することで机上でのパフォーマンス検証を実現
    詳細はこちら >

    08

    PLAS-Qliteとの連携

各種機能

コードカバレッジ計測
ステートメント(C0)、ブランチ(C1)、MC/DC、関数、コール
マイコンシミュレータ
Altera、ARM、Cypress、Infineon、JRC、Melexis、NXP、Panasonic、Renesas、Sony、ST Microelectronics、Texas Instruments、Toshiba など多数の組み込みマイコンをサポート
(詳細は下記関連リンク内を参照)
テストデータ自動生成
分岐条件解析に基づいたC0、MC/DCカバレッジデータ
コマンドライン実行
バッチファイルによるテスト実行機能(CLI = Command Line Interface)
機能安全認証
ISO 26262(TCL1~TCL3)、IEC 61508 に対応したツール認証を取得、安全マニュアル(リファレンスワークフロー)をユーザーへ発行

導入事例

株式会社デンソー様

株式会社デンソー様

「カバレッジマスターwinAMS」を使用した単体テスト自動化適用事例

三菱電機メカトロニクスソフトウエア株式会社 静岡支所様

三菱電機メカトロニクスソフトウエア株式会社 静岡支所様

実機コードベース単体テストへの「カバレッジマスターwinAMS」適用事例

株式会社不二越様

株式会社不二越様

IEC 61508機能安全認証への取り組みと単体テストツール「カバレッジマスターwinAMS」の適用事例

関連リンク

関連資料ダウンロード

おすすめコンテンツ

関連サービス・ツール

ピックアップ

pick up

止まらない「技術」で、
未体験の進化を共創する。

製品・サービスの詳細や資料請求につきましては、
お気軽にお問い合わせください。