ホーム > ユーザーサポート > FAQ カバレッジマスターwinAMS
【質問】
カバレッジマスターとCasePlayer2の連携機能を使用して、入出力変数の自動抽出や、テストデータ自動生成機能、C1(MC/DC)カバレッジ計測をしようと考えています。
テスト対象関数は、カバレッジマスターに入力しているオブジェクトファイルを構成しているソース全てではなく、一部分ですが、この場合でも全てのソースをCasePlayer2で解析する必要があるでしょうか?
【回答】
全てのソースをCasePlayer2で解析する必要はありません。テスト対象関数が含まれるソースのみを詳細解析すれば、テスト対象関数について全ての機能が利用できます。
以下に記載するサンプルコードの場合、func2の入出力変数の自動抽出や、テストデータ自動生成機能、C1 (MC/DC)カバレッジ計測をする場合は、CasePlayer2で「file2.c」のみ詳細解析すれば問題ありません。
<サンプルコード>
■file1.h
char *gb_port1; // i/oポート入力
int *gb_data_out; // 結果
■file1.c
#include "file1.h"
void func1( int enable, int mode, int input )
{
}
■file2.c
extern char *gb_port1; // i/oポート入力
extern int *gb_data_out; // 結果
void func2( int mode, int *data_in )
{
if( *gb_port1 & 0x00000001 ) {
*gb_data_out = mode;
} else {
*gb_data_out = *data_in;
}
}