よくある質問(FAQ)

テスト実行時に外部ファイルを入力したい場合のテスト方法を教えてください。

【QTE21】テスト作成に関する問題

質問

テスト実行時に外部ファイルを入力したい場合のテスト方法を教えてください。

回答

外部ファイルを使用する場合は、project.jsonの"build-env-executable-path-list"オプションに外部ファイルのパスを指定してください。
指定した外部ファイルは、run-testコマンド実行時にテスト実行バイナリと同じディレクトリにコピーされます。
テストドライバ関数はカレントディレクトリにある外部ファイルを読み込むように実装してください。

例) テストドライバから画像ファイル(test_case.img)を読み込む場合

#include
#include "gtest/gtest.h"
・・・
TEST(AddCase, func1)
{
ifstream ifs("test_case.img");

・・・
}

上記のようなテストドライバコードの場合、test_case.imgのファイルパスをbuild.jsonの"build-env-executable-path-list"オプションに設定します。