Boost单元测试似乎跳过了应该执行的代码

时间:2012-11-23 16:38:13

标签: c++ unit-testing boost

下面的Boost测试似乎没有像我预期的那样工作。 断点显示BOOST_AUTO_TEST_CASE(...)中的代码未运行(但BOOST_AUTO_TEST_CASE(..)的行运行正常)。怎么了?

UT_Math.cpp

#include "../UTest/UT_Math.h"
#include <iostream>

BOOST_AUTO_TEST_CASE(testUTMath)
{
    UTMath test;
    cout << "UTMath is started" << endl;
    test.Test1();
    cout << "Test1 is completed" << endl;
}

UT_Math.h

#include "../Math/Math.h"
#define BOOST_TEST_MODULE UTMathTest
#include <boost/test/unit_test.hpp>

class UTMath 
{
public:
   void Test1()
   {
      BOOST_REQUIRE(1==1);
   }
};

P.S。:在Normal和UnitTest模式之间切换应该使用哪些指令(对于Windows和Unix)?

1 个答案:

答案 0 :(得分:0)

删除main()功能修复了问题