在如Boost.Test文档和例子并不真的似乎包含我发现任何不平凡的例子,到目前为止,两个教程这里和这里同时有帮助都是非常基本的.
我希望为整个项目提供一个主测试套件,同时保持每个模块套件的单元测试和可以独立运行的灯具.我还将使用模拟服务器来测试各种网络边缘情况.
我在使用Ubuntu 8.04,但我会采用Linux或Windows的任何示例,因为我正在编写自己的makefile.
编辑
作为测试,我做了以下事情:
// test1.cpp
#define BOOST_TEST_MODULE Regression
#include <boost/test/included/unit_test.hpp>
BOOST_AUTO_TEST_SUITE(test1_suite)
BOOST_AUTO_TEST_CASE(Test1)
{
BOOST_CHECK(2 < 1);
}
BOOST_AUTO_TEST_SUITE_END()
// test2.cpp
#include <boost/test/included/unit_test.hpp>
BOOST_AUTO_TEST_SUITE(test2_suite)
BOOST_AUTO_TEST_CASE(Test1)
{
BOOST_CHECK(1<2);
}
BOOST_AUTO_TEST_SUITE_END()
Run Code Online (Sandbox Code Playgroud)
然后我编译它: g++ test1.cpp test2.cpp -o tests
这给了我关于链接期间的大量"多重定义"错误.
当它在一个文件中时它工作正常.