我的C++應用程序對應用程序的API爲獨立的程序各種基於殼集成測試以及源代碼的單元測試。這些測試通過make check
目標跑,通過自動工具(autoconf的,automake的),其come with a test-driver and a log parser生成。我已經開始採用了Boost單元測試框架進行單元測試套件進行更好的管理。有沒有辦法同時運行驗收測試和單元測試的make check
目標下(同時使用升壓UTF和標準TAP測試)?使用升壓單元測試框架(UTF)與`讓check`
我Makefile.am
看起來是這樣的:
check_PROGRAMS = test1 test2
SOURCES = test1.cpp test2.cpp
CC = g++
TESTS = $(check_PROGRAMS) standalone1.test standalone2.test
LDADD = -lboost_unit_test_framework
TEST_LOG_DRIVER = env AM_TAP_AWK='$(AWK)' $(SHELL) \
$(top_srcdir)/test/tap-driver.sh
EXTRA_DIST = $(TESTS)
升壓UTF測試套件看起來是這樣的:
#define BOOST_TEST_DYN_LINK
#define BOOST_TEST_MODULE "My Unit Tests"
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_SUITE(MyTestSuite1);
BOOST_AUTO_TEST_CASE(MyTestCase1) {
BOOST_CHECK(true);
}
BOOST_AUTO_TEST_SUITE_END();