カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター...

38
カバレッジマスター セットアップ手順書 1 / 38 カバレッジマスター セットアップ手順書 2015 年 06 月 30 日 第 1.0.2 版

Upload: others

Post on 29-Feb-2020

10 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

1 / 38

カバレッジマスター セットアップ手順書

2015 年 06 月 30 日

第 1.0.2 版

Page 2: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

2 / 38

目次

カバレッジマスター セットアップ手順書 ......................................................................................................................................... 3

はじめに .............................................................................. 3 ツールバージョン ....................................................................... 3 ツール相関図 .......................................................................... 3 セットアップ手順 概略フロー図 ............................................................ 4

CasePlayer2 のセットアップ手順 ........................................................................................................................................................ 6

1.プロジェクト設定 ....................................................................... 6 2.ソースファイルの登録 .................................................................. 8 3.仕様書生成の設定 ................................................................... 10 4.プリプロセッサ設定 ................................................................... 12 5. C オプションパラメータの設定 .......................................................... 14

(参考) アセンブラオプションパラメータの設定 ............................................... 15

6.全仕様書生成 ....................................................................... 16 7.定義のない関数のスケルトンを生成 ..................................................... 16 8.オブジェクト生成 ...................................................................... 16

(参考) その他の FAQ .................................................................. 17

カバレッジマスターwinAMS のセットアップ手順......................................................................................................................... 18

9.プロジェクト設定 ...................................................................... 18 10. OMF コンバート設定 ................................................................. 20 11.起動設定 .......................................................................... 24 12.テスト設定 ......................................................................... 26 13.スタブ生成 ......................................................................... 29 14.オブジェクト生成 ..................................................................... 32

(参考) 動作確認とデバッガの利用方法 .................................................... 33

(参考) その他の FAQ .................................................................. 37

Page 3: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

3 / 38

カバレッジマスター セットアップ手順書

本手順書では、カバレッジマスターのセットアップについて、解説します。セットアップするツールは

カバレッマスターwinAMS と CasePlayer2 になります。本手順書で説明されていない箇所については、

各ツールのヘルプやチュートリアルをご確認ください。

マイコンシミュレータの機能を使用した単体テスト手法をまとめた資料を公開しています。その「ユー

ザー向け技術サポート情報」(http://www.gaio.co.jp/support/user/tech_paper.html)の中のセ

ットアップに関連する FAQ もご案内します。

本手順書は、下記のツールバージョンを元に作成しています。

① カバレッジマスターwinAMS V3.6.2

② CasePlayer2 V5.6.2

はじめに

ツールバージョン

ツール相関図

評価対象の

ソースコード

クロス

コンパイラ

静的解析ツール

CasePlayer2

関数が使用する変数情

報を解析

関数

解析情報 カバレッジマスター

winAMS

C0/C1/MCDC

入力データ作成支援機能

Obj

組込みマイコン

実装コード

カバレッジマスター

winAMS

単体テスト

自動実行機能

入力データ

カバレッジレポート

C0/C1

テスト結果・期待値判

マイコンシミュレータ OMF変換

Page 4: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

4 / 38

カバレッジマスターのセットアップは下記の手順に則って、実施して下さい。

1.CasePlayer2 のセットアップ

1.1.プロジェクト設定

1.2.ソースファイルの登録

1.3.仕様書生成の設定

1.4.プリプロセッサ設定

1.5.C オプションパラメータ設定

1.6.全仕様書生成

画面下半分の「メッセージビュー」に「仕様書生成終了」が表示されると、セットアップ完了です。「仕

様書生成エラー終了」が表示される場合は、1.3.「仕様書生成の設定」~1.5.「C オプションパラメータ

設定」の何れかに設定不足がありますので、再設定してから「全仕様書生成」を実施して下さい。

2.カバレッジマスターwinAMS のセットアップ

2.1.プロジェクト設定

2.2.OMF コンバート設定

2.3.起動設定

2.4.テスト設定

2.5.スタブ生成

セットアップ手順 概略フロー図

1.プロジェクト設定

2.ソースファイルの

登録

3.仕様書生成の設

5.Cオプションパラメ

ータ設定

4.プリプロセッサ設

7.定義のない関数

のスケルトンを生成

6.全仕様書生成

解 析 エ ラ

ーなし?

No

Yes

8.オブジェクト生成

9.プロジェクト設定

11.起動設定

10.OMFコンバート設

12.テスト設定

13.スタブ生成

14.オブジェクト生

CasePlayer2

開発環境

(CubeSuite/HighTec 等)

winAMS

Page 5: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

5 / 38

テスト(サンプル)関数を実施して、実行結果とカバレッジ結果が確認できれば、セットアップ完了で

す。結果が確認出来ない場合は、2.2.「OMF コンバート設定」~2.5.「スタブ生成」の何れかに設定不

足がありますので、再設定してから確認して下さい。

Page 6: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

6 / 38

CasePlayer2 のセットアップ手順

1.1.「言語設定」-「C ソースに関する設定」について

解析対象のソースコードの言語仕様に応じて「ANSI-C」「GNU-C」「C99」(「VC++」)を選択します。

※「ANSI-C」以外の解析には「言語拡張オプション」が必要です。

※「ANSI-C」以外を選択した場合は、「MISRA-C」解析が実施出来ません。

※解析対象のソースコードの言語仕様が「ANSI-C」だとしても、そこからインクルードされるヘッダファ

イルの言語仕様が「GNU-C」「C99」の場合は、それらに合わせて選択します。

1.2.「ソースファイルは絶対パスで管理する」について

アプリケーションが大規模になると、解析対象のソースコード群を機能単位にフォルダ分けして、運

用する事が多いと思います。開発環境のフォルダ構成をそのまま CasePlayer2 で利用する場合は、こ

ちらのチェックボックスを ON にして下さい。

1.3. 「ターゲット CPU 及びコンパイラ固有の設定」/「MPU 及びコンパイラ固有の設定」について

CasePlayer2 は、設定した言語仕様に沿って、解析を実行します。解析対象のソースコード中には、

コンパイラ特有の予約語等が含まれている事がありますが、何も設定しないと、解析時エラーが発生し

ます。「C オプションパラメータ」-「ユーザーキーワード」などの設定で回避する事が可能ですが、予め

1. プロジェクト設定

CasePlayer2

から起動 winAMS

から起動

V3.7.1 以前 V6.0.0 以降

Page 7: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

7 / 38

弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

※winAMS から起動した場合は、マイコン、コンパイラ情報が引き継がれる為、設定は出来ません。

関連 FAQ(019_07):CasePlayer2 にソースを登録して解析しましたが、「CasePlayer2-E-SYN : ; が

必要です」のエラーが発生します。

http://www.gaio.co.jp/support/user/faq/winams/faq_019_07.html

Page 8: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

8 / 38

2.1.ソースファイルの登録について

解析対象のソースファイルは、「ファイル毎に登録する」と「フォルダ毎に登録する」の 2 種類の方法

があります。

登録するソースファイルは解析対象の関数の実体が定義されているファイルのみで問題ありません。

(解析対象のソースファイルが参照(include)しているヘッダファイルは登録しなくても解析には問題

がありません。)

※ヘッダファイルがあるディレクトリを設定する必要があります。

Tips:ヘッダファイルを登録する場合としない場合の(詳細)解析結果の違いについて

外部変数一覧/typedef 一覧/#define 一覧/インクルード関連図 は、登録しなくても解析結果が

出力されます。

フローチャート/モジュール仕様書/モジュール構造図/構造体仕様書/モジュール一覧/構造体一

覧/外部変数リファレンスリスト/関数リファレンスリスト/構造体リファレンスリスト/メンバリファレンスリスト

に関しては、関数/変数の実体や構造体の型宣言がヘッダファイルにある場合に、登録しないと解析

結果が出力されません。

※CasePlayer2 を単体で使用する場合は、より詳細な情報が出力される為、ヘッダファイルを登録し

た方が良いですが、カバレッジマスターwinAMS との連携をするだけであれば、ヘッダファイルを登録し

ない方が、CasePlayer2 の解析時間が短縮できます。

2.2.「ファイル構成に合わせてフォルダ付きで登録する」について

前ページで説明した「ソースファイルは絶対パスで管理する」のチェックが ON の時のみ有効になりま

す。開発環境のフォルダ構成をそのまま CasePlayer2 で利用する場合は、こちらのチェックボックスを

ON にして下さい。

Tips:ユーザーインクルードパスの設定について

CasePlayer2 で詳細解析する為には、解析対象のソースファイルが参照(include)しているシステ

2. ソースファイルの登録

CasePlayer2

から起動 winAMS

から起動

Page 9: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

9 / 38

ムヘッダファイル(<hogehoge.h>)やユーザーヘッダファイル("hogehoge.h")があるディレクトリを解析

前に設定する必要があります。ユーザーヘッダファイルは解析対象のソースファイルと同じディレクトリ

にある事が多いです。後で、手動で 1 つずつ、フォルダ設定をする事も可能ですが、「ユーザーインク

ルードパスに追加する」のチェックを ON にすると、自動でパス設定をします。

※検索パスが多いと解析が遅くなることがありますが、後から検索パスを削除した方が効率的に作業

を進る事ができるケースが多いです。

2.3.「ソースをヘッダファイルとして登録する」について

解析対象のアプリケーションによっては、解析対象のソースコードから他の C ソースファイルをヘッダ

ファイルのようにインクルードする事があります。その場合は、ファイルの種別(扱い)をヘッダファイルと

する必要がありますので、こちらのチェックを ON にします。

Page 10: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

10 / 38

3.1.「処理概要の抽出」の設定について

解析対象のソースファイル中のコメントを各種の仕様書に出力する場合に利用します。ツール専用

のコメントではなく、「/* コメント */」「// コメント」の形式で解析が可能です。

3.2.「詳細解析を行う」の設定について

カバレッジマスターwinAMS と連携した機能を使用する場合は、チェックを ON にします。

「winAMS 用プログラム解析情報を生成する」のチェックも ON にする必要があります。

関連 FAQ(D01-01):詳細解析モードを使用する場合、または、CasePlayer2 でカバレッジマスターと

の連携を行う場合に必要な基本的な設定について教えてください。

http://www.gaio.co.jp/support/user/faq/winams/faq_D01_01.html

3. 仕様書生成の設定

Page 11: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

11 / 38

3.3.「スケルトン生成のための情報を生成する」の設定について

この設定を ON にして、仕様書生成を行うと、プロジェクトに登録されているソースを解析して、実体定

義のない関数と変数の情報を抽出します。仕様書生成(解析)を実施した後に、「定義のない関数のス

ケルトンを生成」を使用する事で、それらのスケルトンを自動生成する事が可能です。

Tips: カバレッジマスターwinAMS 連携(スタブ関数生成)について

カバレッジマスターwinAMS では、スタブ関数を自動生成する事が可能です。カバレッジマスターでス

タブ生成できる対象の関数は実体がある関数のみの為、システムコールなどのライブライを使用してい

る場合は、そのままでは、スタブ生成が出来ません。そのような場合に、本機能を利用する事で、スタ

ブ作成作業を効率化する事が可能です。

※ソースを作成しただけでは、スタブ関数対象になりませんので、ご利用の開発環境にこの機能で

作成されたファイルを追加して、オブジェクトをビルドする必要があります。(開発環境に依っては、ライ

ブライのリンク設定を削除しないと、二重定義エラーが発生する事があります。)

※この機能で作成するスケルトンと、カバレッジマスターwinAMS で作成するスタブ関数の内容は、同

一になります。

Page 12: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

12 / 38

4.1.「プリプロセッサの展開結果から仕様書を生成する」の設定について

プリプロセッサ展開した結果から仕様書を作成する場合には、このチェックを ON にします。

例えば、下記の様な AUTOSAR 準拠のソースコードで、関数名等を正しく仕様書に出力する為には、

この設定が必要です。

#define FUNC(rettype, memclass) retype

FUNC(void, RTE_CODE) Rte_XXXX(void)

{

}

※この設定を利用しない場合は、関数名が「FUNC」として出力されますが、設定を利用すると、意図

通りに「Rte_XXXX」として出力されます。

4.2.「#define(デファイン名[=数値])」の設定について

解析対象のソースファイルをご利用の開発環境でビルドする場合に、プリプロセッサ制御を行ってい

る場合は、それと同じ設定をここに追加します。

※解析対象のソースファイルがインクルードしているヘッダファイル中にプリプロセッサ定義をしてい

る場合は、その設定が利用される為、ここの設定は不要です。

4. プリプロセッサ設定

Page 13: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

13 / 38

関連 FAQ(D01-01):詳細解析モードを使用する場合、または、CasePlayer2 でカバレッジマスターと

の連携を行う場合に必要な基本的な設定について教えてください。

http://www.gaio.co.jp/support/user/faq/winams/faq_D01_01.html

4.3.「プレインクルードファイル」の設定について

ご利用の開発環境でプレインクルードされているファイルがあれば、ここに設定します。

関連 FAQ(019_06):ルネサスエレクトロニクス(旧 NEC エレクトロニクス)の純正クロスコンパイラを使用

していますが、CasePlayer2 での解析時に「CasePlayer2-E-SYN : 名前( *** )が宣言されていませ

ん.」のエラーが出ます。

http://www.gaio.co.jp/support/user/faq/winams/faq_019_06.html

関連 FAQ(005_01):ルネサスエレクトロニクス(旧 NEC エレクトロニクス)のコンパイラを使用しています

が、i/o ポートが入出力変数に指定できません ※カバレッジマスターwinAMS

http://www.gaio.co.jp/support/user/faq/winams/faq_005_01.html

4.4.「システムインクルードパス」「ユーザーインクルードパス」の設定について

詳細解析を実施する場合、解析対象のソースファイルがインクルードしているヘッダファイルのパス

を設定します。「システムインクルードパス」にはシステムヘッダファイル(include <hogehoge.h>)、ユ

ーザーヘッダファイル(include "hogehoge.h")のパスを設定します。

関連 FAQ(019_04):CasePlayer2 の解析中にヘッダファイルの「ファイル i/o エラー」が発生します。

どのように対処すればよいですか?

http://www.gaio.co.jp/support/user/faq/winams/faq_019_04.html

関連 FAQ(019_02):CasePlayer2 インクルードパスの検索順序はどのようなりますか?

http://www.gaio.co.jp/support/user/faq/winams/faq_019_02.html

関連 FAQ(019_03):CasePlayer2 のインクルードパス設定に相対パスを使用することはできますか?

http://www.gaio.co.jp/support/user/faq/winams/faq_019_03.html

関連 FAQ(019_05):CasePlayer2 インクルードパスを指定しましたが、サブフォルダのヘッダファイル

が認識されません。

http://www.gaio.co.jp/support/user/faq/winams/faq_019_05.html

Page 14: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

14 / 38

5.1.「ユーザーキーワード」の設定について

CasePlayer2 は、1.1.「言語設定」-「C ソースに関する設定」で設定された言語仕様に準拠して解析

を実行します。言語仕様に準拠しないコンパイラ依存の非言語仕様(ANSI-C、GNU-C、C99)の解析方

法を設定します。※この設定がないと、非言語仕様部分の解析でエラーが発生します。

関連 FAQ(019_07):CasePlayer2 にソースを登録して解析しましたが、「CasePlayer2-E-SYN : ; が

必要です」のエラーが発生します。

http://www.gaio.co.jp/support/user/faq/winams/faq_019_07.html

5.2.「置き換えキーワード」の設定について

解析対象のソースファイル中に指定キーワードを見つけたら、既存キーワードと認識して解析を実行

します。

int8 のようなキーワードは、言語仕様の型ではないので、そのままでは解析が出来ません。エラー

なく正しく解析する為には、5.1.「ユーザーキーワード」の設定についてを利用するか、こちらの設定を

利用する必要があります。

5. C オプションパラメータの設定

Page 15: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

15 / 38

「アセンブラオプションパラメータ」の設定について

CasePlayer2 は、アセンブラ言語から仕様書(フロチャート、モジュール仕様書、モジュール構造図、

モジュール一覧)を作成する事も可能です。マイコン毎にアセンブリ命令(ニーモニック)が異なります

ので、こちらを設定して頂く必要があります。

関連 FAQ(462_02):CasePlayer2 のアセンブラからフローチャートなどの仕様書を生成する機能は、

どのマイコンにしていますか?

http://www.gaio.co.jp/support/user/faq/winams/faq_462_02.html

(参考) アセンブラオプションパラメータの設定

Page 16: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

16 / 38

6.1.「全仕様書生成」について

1.「プロジェクト設定」~5.「C オプションパラメータの設定」が完了したら、winAMS 連携用のデータ解

析や仕様書生成を実施する為に、「全仕様書生成」を実行します。

※「全仕様書生成」が実行できる状態になれば、「全 MISRA-C 解析」も実行できます。

関連 FAQ(019_07):CasePlayer2 にソースを登録して解析しましたが、「CasePlayer2-E-SYN : ; が

必要です」のエラーが発生します。

http://www.gaio.co.jp/support/user/faq/winams/faq_019_07.html

Tips: 「仕様書を生成」について

「全仕様書生成」は、プロジェクトに登録されているソースファイル全体の仕様書を生成しますが、

「仕様書を生成」は、前回の仕様書生成後に更新されたソースファイルのみの仕様書を生成します。

※解析オプションを変更した場合は、「仕様書を生成」にしても再解析が必要な為、「全仕様書生成」

が実行されます。

これ以降の、「7.定義のない関数のスケルトンを生成」と「8.オブジェクト生成」は、CasePlayer2 のセ

ットアップとは直接関係がありません。カバレッジマスターwinAMSでテストを実施する場合に参照して下

さい。

7.1.「定義のない関数のスケルトンを生成」について

3.3.「スケルトン生成のための情報を生成する」の設定について を利用する事で、自動で実体定義

のない関数と変数を作成する事ができます。

8.1.「オブジェクト生成」について

「定義のない関数のスケルトン」を作成した場合は、作成したソースファイルをご利用の開発環境(コ

ンパイラ)に追加してビルド(コンパイル/リンク)して下さい。

※ビルドする時には、リンク後に出力されるオブジェクトにデバック情報が出力される必要がありま

す。

6. 全仕様書生成

7. 定義のない関数のスケルトンを生成

8. オブジェクト生成

Page 17: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

17 / 38

Tips: 開発環境でのビルドについて

後述するカバレッジマスターwinAMS のセットアップでスタブ関数を生成する場合は、そこで纏めてビ

ルドする事で、ビルド時間を短縮する事ができます。

関連FAQ(462_01):カバレッジマスター(SSTManager)とCasePlayer2のはバージョンを合わせる必要

がありますか?

http://www.gaio.co.jp/support/user/faq/winams/faq_462_01.html

関連 FAQ(C01_01):CasePlayer2 で WORD 書類を作成しようとすると「実行時エラー'5941' 指定され

たコレクションのメンバーは存在しません。」のエラーが出て変換できません。

http://www.gaio.co.jp/support/user/faq/winams/faq_C01_01.html

関連 FAQ(C01_02):CasePlayer2 で仕様書の WORD 変換中に「<Template List> ******.dot」のエ

ラーで変換が止まってしまいます。

http://www.gaio.co.jp/support/user/faq/winams/faq_C01_02.html

(参考) その他の FAQ

Page 18: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

18 / 38

カバレッジマスターwinAMS のセットアップ手順

9.1.①「MPU 名」「MPU」について

実機で使用するマイコン(・コア)を設定します。

【V3.7.1 以前】利用マイコン名(利用コンパイラ名)の様な表記になっていますので、ご利用のマイコ

ンとコンパイラの組み合わせで、選択します。

※利用コンパイラ名が表記されていないものは、ガイオ・テクノロジー製のコンパイラを利用している

場合に選択します。

ここの設定により、後述する「OMF コンバータ設定」で利用できるコンバータが限定されます。

【V6.0.0 以降】利用マイコン名の様な表記になっていますので、ご利用のマイコンを選択します。

こことコンパイラの設定により、後述する「OMF コンバータ設定」で利用できるコンバータが限定されま

す。

9.2.②「型番」/「MPU 詳細選択」について

【V3.7.1 以前】実機で使用するマイコン型番を設定します。マイコンによっては、型番ではなく、コン

パイルモードを選択したり、エンディアンを選択する必要があります。

※型番指定の場合で、ご利用されている型番がない場合は、同様のマイコン・コアを利用している型

番を選択します。

9. プロジェクト設定

V3.7.1 以前 V6.0.0 以降

Page 19: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

19 / 38

関連 FAQ(017_05):カバレッジマスターのプロジェクト作成ダイアログで、使用しているマイコンの型番

がリストに表示されません。

http://www.gaio.co.jp/support/user/faq/winams/faq_017_05.html

【V6.0.0 以降】MPU の詳細がある場合は、MPU の詳細を設定します。

9.3.③「コンパイル環境」「コンパイラ」について

【V3.7.1 以前】オブジェクトをビルドする際に利用しているコンパイラの設定をします。通常は「その

他」を選択します。ガイオ・テクノロジー製のコンパイラを利用している場合は、「XASS(GAIO クロス開発

環境)」を選択します。

関連 FAQ(017_01):「OMF 変換」のボタンがグレーアウトし押すことができません。どのようにすれば良

いですか?

http://www.gaio.co.jp/support/user/faq/winams/faq_017_01.html

【V6.0.0 以降】オブジェクトをビルドする際に利用しているコンパイラの設定をします。ガイオ・テクノ

ロジー製のコンパイラを利用している場合は、「GAIO」を選択します。

Tips:OMF コンバート設定について

ガイオ・テクノロジー製のコンパイラを利用している場合は、後述する「OMF コンバート設定」(デバッグ

情報変換)は不要になります。

9.4.④「CasePlayer2 プロジェクト」について

CasePlayer2との連携機能を使用する場合は、前述で作成したCasePlayer2のプロジェクトファイル

(*.vproj)を設定します。

※カバレッジマスターwinAMS のプロジェクトを作成した後でも設定が可能です。

関連FAQ(462_01):カバレッジマスター(SSTManager)とCasePlayer2のはバージョンを合わせる必要

がありますか?

http://www.gaio.co.jp/support/user/faq/winams/faq_462_01.html

Page 20: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

20 / 38

10.1.OMF コンバートとは?

ガイオ・テクノロジー製のコンパイラ以外の他社製のコンパイラを使用する際には、オブジェクトコー

ドをカバレッジマスターwinAMS が読み込める形式(*.xlo)のファイルに変換する必要があります。

「OMF 変換」の機能を使用して他社のオブジェクトファイル(ルネサス HEW では *.abs、PM+では

*.out など)を変換する事を OMF コンバートと言います。

関連 FAQ(011_03):カバレッジマスターwinAMS でテスト環境を構築する際、オブジェクトコードに関し

て必要な設定について教えてください

http://www.gaio.co.jp/support/user/faq/winams/faq_011_03.html

関連 FAQ(017_01):「OMF 変換」のボタンがグレーアウトし押すことができません。どのようにすれば良

いですか?

http://www.gaio.co.jp/support/user/faq/winams/faq_017_01.html

10.2.「コンバータ名」について

OMF コンバータを設定します。通常は、デフォルト設定で問題ありませんが、利用する環境に依って

は、複数の OMF コンバータがあり、選択する必要があります。

10.3.「入力オブジェクト」について

ご利用の開発環境でビルドしたオブジェクトを設定します。

※テスト対象とするオブジェクトコードは、コンパイル&リンクされ、実行可能なオブジェクトコードで

ある必要があります。また、オブジェクトコードにはデバッグ情報が含まれている必要があります。ご利

用の開発環境にて、デバッグ情報を出力するオプションを ON にした状態で、コンパイルを行ってくださ

い。 適化などその他のコンパイルオプションは、実際に製品に適用するものを使用して問題ありませ

ん。

10. OMF コンバート設定

Page 21: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

21 / 38

10.4.「変換オプション」について

OMF 変換する際のオプションを設定します。オプションはご利用になる OMF コンバータによって、異な

ります。オプションの詳細は、 [ヘルプ]→[シミュレータマニュアル]→[OMF コンバータ] から確認でき

ます。

Tips:良く利用するオプションについて

-s(ソース検索パス)/-path(ソース検索パスファイル)や-select(デバッグ対象ファイル指

定)/-select_path(デバック情報出力対象パスファイル)のオプションは後述する GUI(「ソースパス変

更」「デバッグ情報を生成するユニットを選択」)でも設定が可能な為、ここでは、それ以外のオプション

をご利用になる場合に設定をして下さい。

Tips:「-funcinfo」オプションについて

M16C, R8C/Tiny, R32C/100, MPC83xx(e300)のマイコンを利用されている場合、引数のデバッグ情

報が正しく出力されずに、OMF 変換の内容が不正になる場合があります。その場合は、こちらのオプシ

ョンを利用します。

※このオプションは「関数情報ファイル」が必要ですが、CasePlayer2 の解析結果「***.arg」を利用

できます。

例)-funcinfo c:\xxx\xxx\xxx.arg

10.5.「ソースパス変更」について

オブジェクトをビルドした環境と、テスト環境が異なる場合、オブジェクト中のソースパス情報と実際

のソースパス位置が異なる場合があります。その場合に、ソースパス変更の設定を行います。

「ソース検索パスファイル名」は、OMF コンバータに「-path」オプションがある場合にのみ設定が可能

Page 22: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

22 / 38

です。ソースファイルを検索するパス情報が記述されたファイルの作成/指定をします。

「ソース検索パス」は、OMF コンバータに「-s」オプションがある場合にのみ設定が可能です。ソー

スファイルを検索するパスを設定します。

10.6.「デバッグ情報を生成するユニットを選択」について

入力オブジェクトが大きい場合、OMF 変換の時間が長くなる事やコンバート後のオブジェクトをテス

トする時に、ツールの動作が遅くなってしまう場合があります。

そのような場合、この機能を利用してテスト対象関数に必要なソースファイルに絞っての OMF 変換す

る事で、パフォーマンスを改善する事が出来ます。

Tips:デバック情報の絞りこみについて、

デバッグ情報が不足してしまうと、テストが正しく実行出来ません。

例えば、テスト対象の関数があるソースファイル(A)のみのデバッグ情報を生成しても、テスト対象関

数で使用している変数の定義が存在するソースファイル(B)のデバッグ情報を生成していないと、テス

トデータ作成時に変数を指定できず、テストを実施する事が出来ません。

テスト対象関数に必要なデバッグ情報例

①テスト対象関数

テスト対象関数を定義しているソースファイルのデバッグ情報

②初期設定終了アドレス

例えば、main 関数を初期設定終了アドレスに指定する場合には main 関数を定義しているソ

ースファイルのデバッグ情報

※初期設定終了アドレスを 16 進数で指定する場合は不要

③テスト対象関数が参照(代入)している変数(テストデータで指定する場合)

外部変数を参照(代入)している場合、その変数を定義しているソースファイルのデバッグ情

報が必要

④テスト対象関数から呼び出している関数

例えば、サブ関数をスタブする場合には、呼び出している関数を定義しているソースファイ

ルのデバッグ情報

⑤スタブ関数

スタブ関数を使用する場合、スタブ関数を定義しているソースファイルのデバッグ情報

10.7.「OMF 自動コンバート」について

入力オブジェクトと出力オブジェクト(*.xlo)の更新日付を比較して、入力オブジェクトの方が新しい

場合は、自動で入力オブジェクトの OMF 変換を実施します。

10.8.「OMF 変換」について

前述で設定した条件を使って、OMF 変換を実行します。OMF 変換の実行結果は、画面下の「メッセー

ジウインドウ」に表示されます。変換結果メッセージの詳細は、 [ヘルプ]→[シミュレータマニュアル]

→[OMF コンバータ] から確認できます。

Tips:OMF 変換時のワーニングについて

OMF 変換を実行すると、「メッセージウインドウ」に結果が表示されますが、エラーが発生した場合は、

設定内容などを見直す必要があります。

ワーニングは「コンパイラの 適化によって未使用のオート変数などのデバッグ情報がない場合」等、

ツールの実行に影響がないメッセージが表示される事がほとんどですので、テスト作業に影響がないワ

ーニングは無視して問題ありません。

関連 FAQ(017_02):OMF 変換を行うと、Warning が大量に出力されます。この Warning の出力を行わ

ない方法はありますか?

Page 23: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

23 / 38

http://www.gaio.co.jp/support/user/faq/winams/faq_017_02.html

関連 FAQ(017_03):OMF 変換によりオブジェクトを変換したいのですが、途中で強制終了してしまい

ます。

http://www.gaio.co.jp/support/user/faq/winams/faq_017_03.html

関連 FAQ(017_04):OMF 変換中に「オブジェクトが正しく読めませんでした」のエラーが出力され、変

換が行えません。

http://www.gaio.co.jp/support/user/faq/winams/faq_017_04.html

関連 FAQ(017_06):ルネサス CubeSuite+を使用して RL78 のコードを生成しましたが、OMF 変換しテ

スト実行後、「ソースファイルが存在しません。」のエラーが出ます。

http://www.gaio.co.jp/support/user/faq/winams/faq_017_06.html

Page 24: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

24 / 38

11.1.「ターゲットオブジェクトファイル」について

OMF コンバートしたオブジェクト(*.xlo)を設定します。

11.2.「スタートアップコマンドファイル」について

テスト実行するマイコンシミュレータの起動時に実行されるスクリプトファイルで、マイコンシミュレータ

の設定を自動化する為に使用します。初期セットアップでは、下記の様なケースで利用します。

※スタートアップコマンドファイルに記述できるマクロコマンドは、デバッガ UIモードで起動したマイコ

ンシミュ

レータ上で、手動で設定する事も可能です。

コマンド詳細は、 [XAIL-Debugger使用手引き]→[デバッガの機能]→[コマンド/メッセージ]→[デ

バッガカーネルのコマンド/メッセージ]→[SystemG]→[デバッガコマンド一覧] から確認できます。

例 1) リセットベクタ(プログラム開始位置)設定

例 2) メモリ領域の属性設定

例 3) レジスタ変化待ちなどのループをブレイクする操作

11. 起動設定

スタートアップ ルーチン : : : jmp main

リセットベクタから実行開始させる処理

;スタートアップコマンドファイル @reset

;スタートアップコマンドファイル set reg pc=0x********

通常のマイコンは@reset コマンド

でリセットアドレスがセットされる

実行開始直後に停止する場合は、

マニュアルで開始アドレスを設定

Page 25: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

25 / 38

※スタートアップコマンドファイルで指定したリセットベクタ(プログラム開始位置)から後述する「初期

設定終了アドレス」までの処理の間に H/W の状態を条件にループをしているような場合、カバレッジマ

スターは H/W シミュレーションは実施しませんので、回避するこの対応が必要です。

Tips:マイコンシミュレータのデバッガ UI モードについて

スタートアップコマンドファイルに記述できるマクロコマンドは、デバッガ UI モードで起動したマイコン

シミュレータ上で、手動で設定する事が可能です。逆にデバッガ画面上で、手動操作する内容をマク

ロコマンドとして作成する事が可能です。

関連 FAQ(011_03):カバレッジマスターwinAMS でテスト環境を構築する際、オブジェクトコードに関し

て必要な設定について教えてください

http://www.gaio.co.jp/support/user/faq/winams/faq_011_03.html

関連 FAQ(000_01):シミュレータがエラーで止まってしまいます。エラーの原因を調査するために、

動作状態をログに出力して確認する方法はありませんか?

http://www.gaio.co.jp/support/user/faq/winams/faq_000_01.html

関連 FAQ(326_01):スタートアップコマンドファイルに記述するマクロで、任意のアドレスのデータを

読み出して処理を変えるには?

http://www.gaio.co.jp/support/user/faq/winams/faq_326_01.html

参考情報:マクロ(シミュレータコマンド)の使い方 ※上級者ユーザー向け

http://www.gaio.co.jp/support/user/tech_paper.html

11.3.「自動テストを行う」について

ここのチェックを ON にして「シミュレータ起動」ボタンを押すと、マイコンシミュレータが起動します。

Tips:マイコンシミュレータの起動モードについて

「自動的に開始」「自動的に終了」の両方のチェックを ON にすると、「自動実行モード」で選択したテ

スト CSV をテスト実行します。いずれかが、OFF の場合は、「デバッガ UI モード」で起動するので、手動

でマイコンシミュレータの操作を行えます。通常は、実行速度の速い「自動実行モード」を利用しますが、

セットアップ時の動作確認やデバッグ作業時には、「デバッガ UI モード」を利用します。

11.4.「全てのメモリ領域をアサイン」について

マ イ コ ン シ ミ ュ レ ー タ 起 動 時 に 、 選 択 し て い る MPU の メ モ リ 空 間 全 領 域 を 使 用 可 能

(Read/Write/Exec)な状態にします。

Tips:実機のメモリ属性と合わせるためには

「全てのメモリ領域をアサイン」を使用しない場合、ターゲットオブジェクトファイル中で静的に割り当

てられた領域のみが、メモリアサインされます。SFR 等マイコン毎に予約されている領域はメモリアサイ

ンされません。実機と同様のメモリアサイン状態にする為には、スタートアップコマンドファイルで

「Assign」コマンドを記述する必要があります。

11.5.「CasePlayer2 連動機能の自動仕様書生成を有効にする」について

このチェックが ON の場合、CasePlayer2 の解析情報を利用する時(テスト CSV 雛形作成時や、テス

トデータエディタで編集を行う時)などに、ソースファイルが更新されていると自動的に仕様書生成を実

行しますので、特別な理由がない限りは、ON にする事を推奨します。

Page 26: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

26 / 38

12.1.「CSV 保存先フォルダ」について

テストを実行する CSV ファイルの保存先を指定します。「テスト CSV 作成」で作成された CSV ファイル

はここに保存されます。

Tips:CSV ファイルの編集について

カバレッジマスターで使用する CSV ファイルのフォーマットは公開されています。「CSV 保存先フォル

ダ」に CSVファイルを手動で作成若しくは編集して、読み込ませる事が可能です。再読み込みする場合

は、「↓更新」ボタンを押してください。

12.2.「テスト結果保存先フォルダ」について

テスト実行結果 CSV ファイルの保存先を指定します。テスト実行結果はここに保存されます。CSV ファ

イル名は「テスト CSV 作成」で作成した CSV ファイル名と同名で保存します。

Tips:テスト実行結果について

テスト実行結果はサマリである「テスト結果報告書」と「実行結果CSVファイル」、「実行結果カバレッジ

ファイル」が作成されます。 新のテスト結果で上書きされますので、履歴管理が必要である場合は、

「シミュレータ起動」する前に保存先を変更する必要があります。また、「テスト結果保存先フォルダ」の

中は相対パスで管理されていますので、結果だけを確認する場合は、指定フォルダ毎移動する事が

可能です。テスト結果保存先フォルダの「テスト結果報告書.htm」を起動する事で、各結果を確認する

事ができます。

12.3.「カバレッジ」について

カバレッジ計測結果についての設定をします。「カバレッジデータを出力する」、「テストデータ毎の

カバレッジデータ」「C1 カバレッジ」「カバレッジログを生成(ログ形式は任意)」のチェックを ON にします。

12. テスト設定

Page 27: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

27 / 38

「詳細設定」ボタンを押すと、カバレッジ計測に関する詳細設定ができますので、任意で設定します。

12.4.「初期設定終了アドレス」について

カバレッジマスターは、実マイコンと同じ手順で動作します。テストが開始されると、「スタートアップコ

マンドファイル」で設定したリセットベクタ(プログラム開始位置)から初期設定終了アドレスで設定した

位置まで実行後に各テストを実行します。テスト対象のアプリケーションには、テスト対象関数を正しく

実行する為の必要 低限の初期設定(スタックポインタ設定、グローバル変数初期化)がありますので、

それが完了する位置を初期設定終了アドレス(シンボル名も可)に設定します。

Tips:初期設定終了アドレスにはどこを設定するか?

テスト対象のアプリケーションによって、スタートアップルーチンの構成は変わりますので、アプリケー

ションンの構成を調べて設定する必要があります。どこか分からない場合は、リセットベクタ(プログラム

開始位置)の後付近に設定して、スタートアップルーチンで実行する初期化処理を「スタートアップコマ

ンドファイル」で設定する事も可能です。

また、リセットベクタ(プログラム開始位置)から初期設定終了アドレス」までの処理の間に H/W の状

態を条件にループをしているような場合、カバレッジマスターは H/W シミュレーションは実施しませんの

で、レジスタ変化待ちなどのループをブレイクする操作が必要になります。(「スタートアップコマンドファ

イル」で自動化できます。)

関連 FAQ(011_01):初期設定終了アドレスのオフセットは何を意味するのでしょうか?

http://www.gaio.co.jp/support/user/faq/winams/faq_011_01.html

関連 FAQ(011_02):「テスト設定」ビューにある「初期設定終了アドレス」とは何ですか?

http://www.gaio.co.jp/support/user/faq/winams/faq_011_02.html

関連 FAQ(011_03):カバレッジマスターwinAMS でテスト環境を構築する際、オブジェクトコードに関し

て必要な設定について教えてください

http://www.gaio.co.jp/support/user/faq/winams/faq_011_03.html

評価対象関数 func2() { : : : }

評価対象関数 func2() { : : : }

スタートアップ ルーチン : : : jmp _main

①スタートアップル

ーチンを実行 ※SP 設定、初期化

main()

{

アプリケーション }

評価対象関数

func1() {

:

:

:

}

②main()へ移動

③ main() は 実 行 せ

ず、 テスト対象関数

へ直接ジャンプ

⑤CSV ファイルに

設定されたテスト

データをループ

実行

④評価関数実行前に

CSV からデータをセット

⑥ 評 価 関 数 実 行 後 に CSV へデータを書き出し

評価対象関数 func2() { : : : }

func1 が 終 了 し た

ら、そのまま次の関

数へ

単体テストの起点を設定: 初期設定終了アドレス

通常は main 関数の

先頭アドレスで OK

実行しない

リセットベクタ(プログラム開始位置)

Page 28: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

28 / 38

参考情報:マクロ(シミュレータコマンド)の使い方 ※上級者ユーザー向け

http://www.gaio.co.jp/support/user/tech_paper.html

Page 29: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

29 / 38

13. スタブ生成

Page 30: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

30 / 38

13.1.スタブ関数とは?

テスト対象関数から呼び出す関数(下位関数)の代用とする仮の関数を「スタブ」と呼びます。

スタブ関数のインターフェスは実際の関数と同様ですが、関数内部の動作はテスト用に定数を返す

だけという作りになっている事が多く、スタブ関数の戻り値によって、テスト対象関数の動作が分岐する

場合は、その分岐パターンを網羅出来る様に設計(実装)します。

カバレッジマスターのスタブ設定には、2つの設定があります。1つは、スタブ関数をどのように作成

するのかの設定で、「共通スタブ関数」と「個別スタブ関数」があります。もう1つは、作成したスタブ関数

をどのように利用するかの設定で、「共通スタブ設定」と「テスト CSV 別スタブ設定」があります。

13.2.「共通スタブ関数」と「個別スタブ関数」 / 「共通スタブ設定」と「テスト CSV 別スタブ設定」の違い

共通スタブ設定では、「共通スタブ関数」の利用(置換)有無のみ設定が可能です。

テスト CSV 別スタブ設定では、「共通スタブ関数」「個別スタブ関数」の利用(置換)有無が設定可能

です。

共通スタブ設定とテスト CSV 別スタブ設定が重複する場合は、テスト CSV 別スタブ設定が優先されま

す。

テスト対象関数 void func( void ){ ret = SubFunc( 10 );}

サブ関数 int SubFunc( int value ){ return ○×..; }

STUB 関数 int AMSTB_SubFunc( int value ) { return ○×..; }

×

「置換」実行

Page 31: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

31 / 38

Tips:「共通スタブ設定」と「テスト CSV 別スタブ設定」のどちらを使えば良いか?

「テスト CSV 別スタブ設定」「個別スタブ関数」は、カバレッジマスターv2.4 から実装された機能です。

下位バージョンとの互換性を保つために「共通スタブ設定」「共通スタブ関数」の機能が残っています。

「共通スタブ設定」は、纏めて置換の有無設定が出来て便利ですが、詳細な設定(例えば、テスト対

象関数 1 の下位関数はスタブを利用するが、テスト対象関数 2 の下位関数は実関数を利用する等)が

出来ない為、「テスト CSV 別スタブ設定」を利用するユーザーが多くなっています。

「共通スタブ関数」「個別スタブ関数」については、ユーザーの環境によって利用状況は変わります

が、テスト対象関数によってスタブ関数の動作を変更するケースが少ない為、「共通スタブ関数」の利

用が多くなっています。

13.3.「スタブプレフィックス」について

スタブ関数は関数を作成しただけでは、利用出きません。スタブ関数群(スタブソースファイル)をご

利用の開発環境(コンパイラ)に追加してビルド(コンパイル/リンク)する必要があります。コンパイル時

の二重定義エラーを回避するために、実関数名の前に付加する接頭辞を設定します。特に理由がな

ければ、デフォルト設定の「AMSTB_」で問題ありません。

13.4.「スタブ生成ソースファイル」について

スタブ関数を作成するファイル指定します。ご利用の環境に合わせて任意で変更します。

13.5.「スタブ生成」と「入出力付スタブ生成」について

「入出力付スタブ生成」は、カバレッジマスターv2.4 から実装された機能です。下位バージョンとの

互換性を保つために「スタブ生成」の機能が残っています。

スタブ生成ソースファイルで指定したファイルにスタブ関数のスケルトン(骨組み)を作成します。

「スタブ生成」は、スケルトンだけ作成して、スタブ関数の動作はユーザーが記述します。

「入出力付スタブ生成」は、スケルトンと、スタブ関数の動作を自動生成します。一般的なスタブ動作

で問題なければ、コードを修正する必要はありませんが、変更したい場合は、手動で処理を編集しま

す。工数削減できる為、「入出力付スタブ生成」をご利用下さい。

13.6.「テスト CSV 別スタブ設定」画面について

「モジュールテスト用 CSV 雛形作成」画面から起動できます。この画面では、スタブ関数の自動作

成とスタブ利用有無が設定できます。

13.7.「置換する関数」について

スタブ関数に置き換えたい関数を「サブ関数」リストで選択し、スタブ生成オプションで共通スタブ

関数か個別スタブ関数を選択した後、 [→]ボタンを押して、「置換する関数」リストに移動します。[OK]

ボタンをクリックすると、「置換する関数」リストの中で未生成のスタブ関数については、スケルトンを自

動生成します。

「入出力付スタブ生成」の例

int AMSTB_ subfunc( int index )

{

static int volatile AMIN_return;

static int volatile AMOUT_index;

AMOUT_index = index;

return AMIN_return;

}

「スタブ生成」の例

int AMSTB_ subfunc( int index )

{

}

Page 32: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

32 / 38

13.8. 「置換しないサブ関数(共通スタブ設定を無効にする関数)」について

「共通スタブ設定」されているスタブ関数を無効化して、実関数を利用したい下位関数を「サブ関

数」リストで選択し、[→]ボタンを押して、「置換しないサブ関数」リストに移動します。

関連 FAQ(102_09):インライン展開された関数やマクロ定義された関数のスタブ関数が作成できませ

ん。どのようにすれば作成できますか?

http://www.gaio.co.jp/support/user/faq/winams/faq_102_09.html

関連 FAQ(002_04):スタブ関数の作成と管理には、どのような方法がありますか?

http://www.gaio.co.jp/support/user/faq/winams/faq_002_04.html

関連 FAQ(002_05):アセンブリ言語で記述された関数のスタブ関数を生成することはできますか?

http://www.gaio.co.jp/support/user/faq/winams/faq_002_05.html

関連 FAQ(002_01):テスト毎(CSV ファイル単位)に共通スタブ関数の ON/OFF 指定を行う方法は?

http://www.gaio.co.jp/support/user/faq/winams/faq_002_01.html

関連 FAQ(002_02):「スタブ設定」で作成したスタブ関数がシミュレータで実行できません。

http://www.gaio.co.jp/support/user/faq/winams/faq_002_02.html

関連 FAQ(002_03):関数ポインタでコールされる関数のスタブ関数はどのようにして作成すればよい

ですか?

http://www.gaio.co.jp/support/user/faq/winams/faq_002_03.html

関連 FAQ(A03_01):同じ関数が何度も呼び出される場合、スタブ関数はどのように作成すると良いで

すか?

http://www.gaio.co.jp/support/user/faq/winams/faq_A03_01.html

14.1.「オブジェクト生成」について

「スタブ関数」を作成した場合は、作成したスタブソースファイルをご利用の開発環境(コンパイラ)

に追加してビルド(コンパイル/リンク)して下さい。

※ビルドする時には、リンク後に出力されるオブジェクトにデバック情報が出力される必要がありま

す。

Tips: スタブソースファイルのビルドについて

スタブソースファイルは実環境にファイルを追加して、コンパイル/リンクしますが、製品出荷時に誤

って、スタブ関数がリンクされないように、スタブファイルにプリプロセッサ制御(#ifdef WINAMS_STUB

~ #endif)があります。

その為、スタブ関数を生成(ビルド)する際には、WINAMS_STUB(コンパイルスイッチ)を定義する必要

があります。

14. オブジェクト生成

Page 33: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

33 / 38

動作確認について

セットアップの動作確認の為に、実行する関数(動作確認の為の簡単な関数)を選択して、テスト

データを作成します。次に、後述する「デバッガ UI モード」でシミュレーション実行して、テスト実行結果

CSV とカバレッジ計測結果が出力されれば、セットアップは完了です。

「デバッガ UI モード」と「自動実行モード」について

カバレッジマスターのシミュレーション実行には 2 つのモードがあります。

「デバッガ UI モード」は、デバッガを使用して、手動でブレークポイントやステップ実行などを利用

して、シミュレーションします。

「自動実行モード」は、デバッガの操作不要で、バックグラウンドでシミュレーション実行し、結果だ

けを表示します。

通常は、テスト実行速度の速い「自動実行モード」を使用してテストを実行し、初期セットアップ時

や、デバッグが必要な際に、「デバッガ GUI モード」で詳細動作を確認して下さい。

※モードの切り替えについては、次の図を参照して下さい。

(参考) 動作確認とデバッガの利用方法

Page 34: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

34 / 38

デバッガが正常起動したどうか確認するには?

アウトプットウィンドウには、シミュレーション実行時の実行結果が表示されます。デバッガ起動時に

エラーなく「%SYSTEMG-I-PROCESS, process "WinAMS" is started」が表示されれば、正しく起動され

た事になります。

PC(カウンタ)の位置について

デバッガを起動して、ソースコードを表示すると、現在の PC がある行の背景色が黄色で表示されま

す。プログラム実行した際に、トレースを取って実行位置を目視(黄色の背景色の移動位置確認)する

場合は、トレース設定を行います。

Page 35: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

35 / 38

レジスタ/メモリなどの参照、変更について

レジスタウィンドウやメモリウィンドウなどを利用して、値の参照や変更が可能です。

実行/ステップなどのデバッグについて

ブレークポイントを設定して、そこまで実行やステップ実行などを行います。ソースコード行の左にア

ドレスが表示されている行にブレークポイントを設定できます。

Tips: テスト対象関数のブレークポイントについて

テスト対象関数にブレークポイントを設定して、デバッグする事があります。 初のマシンコードが展

開されている行(上の図だと 39 行目)のブレークポイントには停止しない仕様になっていますので、次

のマシンコードが展開されている行(上の図だと 40 行目)以降にブレークポイントを設定して下さい。

Page 36: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

36 / 38

アウトプットウィンドウについて

アウトプットウィンドウにはシミュレーションの実行状況やエラー情報などがメッセージ表示されます。

ここに表示されているメッセージは、ログファイル(systemg.log)として、カバレッジマスターのプロジ

ェクトフォルダー配下に保存されます。

コマンド入力ボックスには様々なデバッガコマンドが入力できます。GUI で操作できるほとんどの機

能をコマンドとして入力できます。また、ここに入力できるコマンドは予め「スタートアップコマンドファイ

ル」に記載する事で、自動化が可能です。

使用できるデバッガコマンドについての詳細は、[デバッガの機能]→[コマンド/メッセージ]→[デ

バッガカーネルのコマンド/メッセージ]を参照して下さい。

※「プロジェクト設定」で選択したエンジン毎に参照するヘルプが異なります。

コマンド入力ボックス

Page 37: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

37 / 38

関連 FAQ(021_01):VxWorks の「ローダブルモジュール」の場合、どのようにすれば単体テストを実行

できますか?

http://www.gaio.co.jp/support/user/faq/winams/faq_021_01.html

関連 FAQ(115_01):アセンブラにて定義した変数をテスト条件の変数に指定することはできますか?

http://www.gaio.co.jp/support/user/faq/winams/faq_021_01.html

関連 FAQ(115_02):#pragma inline_asm を使用した関数をテスト対象にする方法は?

http://www.gaio.co.jp/support/user/faq/winams/faq_115_02.html

関連 FAQ(115_03):アセンブラで定義した変数のリファレンスリストを作成できません。

http://www.gaio.co.jp/support/user/faq/winams/faq_115_03.html

関連 FAQ(316_01):割り込みハンドラを単体テスト対象にしたいのですが、どのようにすれば良いで

すか?

http://www.gaio.co.jp/support/user/faq/winams/faq_316_01.html

関連 FAQ(453_01):スタティック関数がカバレッジマスターの関数リストに表示されません。

http://www.gaio.co.jp/support/user/faq/winams/faq_453_01.html

関連FAQ(102_08):インライン展開された関数やマクロ定義された関数をテストしたいのですが、どの

ようにするのが良いでしょうか?

http://www.gaio.co.jp/support/user/faq/winams/faq_102_08.html

関連 FAQ(301_02):アセンブラで記述された関数のテストを行うことはできますか?

http://www.gaio.co.jp/support/user/faq/winams/faq_301_02.html

(参考) その他の FAQ

Page 38: カバレッジマスター セットアップ手順書 150630 …...カバレッジマスター セットアップ手順書 7 / 38 弊社で把握できている設定に関して、この設定を利用する事で、デフォルト設定する事が可能です。

カバレッジマスター セットアップ手順書

38 / 38

※会社名・商品名は各社の商標または登録商標です。 ※本資料の無断転載、複写は禁止しております。 ガイオ・テクノロジー株式会社 ■ユーザーサポートのご案内 http://www.gaio.co.jp/support/support_about.html ■使用方法に関するお問い合わせ方法 お問い合わせは、ユーザーサポート窓口をご利用ください。 http://www.gaio.co.jp/support/support_entry.html ユーザーサポート窓口へのお問い合わせには、ユーザーIDが必要です。 ※保守契約がない場合は、いかなるサポートも提供致しません。

カバレッジマスターセットアップ手順書