3

CppUnit を介した単体テストを採用し、次のディレクトリ構造を持つ C++ プロジェクトがあります。

.
|-- bin
|   `-- tests
|-- src
|   `-- include
`-- test
    `-- include

最上位ディレクトリには、私の Makefile.am ファイルがあります。非再帰的な Makefile を使用したいと考えています。プロジェクトの実行可能ファイルをbinフォルダーにビルドし、 make checkのテストをbin/testsフォルダーにビルドすることができました。

問題は次のとおりです: make checkがテストを実行するとき、現在の作業ディレクトリはまだ最上位ディレクトリ (つまり、make checkを実行したディレクトリ) のままです。テスト スイート専用の作業ディレクトリを変更することはできますか?

私の Makefile.am ファイルの関連部分は次のとおりです。

$(TESTDIR)=./bin/tests
check_PROGRAMS = $(TESTS)
TESTS = $(TESTDIR)clocktest

__TESTDIR_clocktest_SOURCES = test/clocktest.cpp test/unittest.cpp src/clock.cpp
__TESTDIR_clocktest_CPPFLAGS = $(AM_CPPFLAGS) $(CPPUNIT_CFLAGS) $(TESTCPPFLAGS)
__TESTDIR_clocktest_LDADD = $(CPPUNIT_LIBS)
4

1 に答える 1