接着,“生成”该工程,产生tested.obj文件。
  3. 配置Boost单元测试工程
  新建的Boost单元测试工程中有两个源文件“BoostUnitTestSample.cpp”及“BoostUnitTest.cpp”(还有stdafx.h、stdafx.cpp、targetver.h),前一个文件是样例,可以不要,后一个文件可以当作我们的单元测试源文件。
  先对该工程进行配置:


  4. 进行Boost单元测试
  注:我们在这时只进行简单的单元测试,更加复杂的测试请参考文章后给出的链接。
  在BoostUnitTest工程中的文件“BoostUnitTest.cpp”(也可新建)添加如下代码:
1 #define BOOST_TEST_MODULE Tested_Module                                // 主测试套件,一个测试项目中只能有一个主测试套件
2
3 #include "stdafx.h"
4 #include "D:VSProjectBoostUnitTestBoostUnitTestTested ested.h"    // 待测工程头文件
5
6 struct Tested_Fixture                                                  // 测试夹具
7 {
8     Tested_Fixture()
9     {
10         BOOST_TEST_MESSAGE("setup fixture");
11         tmpTested = new Tested();
12     }
13     ~Tested_Fixture()
14     {
15         BOOST_TEST_MESSAGE("teardown fixture");
16         delete tmpTested;
17     }
18     Tested * tmpTested;
19 };
20
21 BOOST_FIXTURE_TEST_SUITE(Tested_test, Tested_Fixture)                  // 测试套件
22
23 BOOST_AUTO_TEST_CASE( Tested_Method_add_Test)                          // 测试用例
24 {
25      // TODO: Your test code here
26     BOOST_WARN(tmpTested->add(2, 2) == 4);                             // WARN型预言检测
27     BOOST_CHECK(tmpTested->add(2, 2) == 4);                            // CHECK型预言检测
28     BOOST_REQUIRE(tmpTested->add(2, 2) == 4);                          // REQUIRE型预言检测
29 }
30
31 BOOST_AUTO_TEST_SUITE_END()
  点击“生成->生成解决方案”(预先打开“测试->窗口->测试资源管理器”)可以看到在“测试资源管理器”中出现了“BoostUnitTest”这个单元测试用例,如下图:

  注:如果电脑安装有杀毒软件(如360),“生成解决方案”的时候可能会提示:error LNK1104: 无法打开文件“...BoostUnitTestDebugTested.dll"。这是因为杀毒软件拦截了单元测试工程对被测试工程.dll文件的访问。比较简单的方法是将杀毒软件关闭OK了。

  点击“全部运行”,可以看到该测试用例变绿,说明测试通过,如下图: