gtest的彩色信息输出 + boost.test的内存泄漏检测及定位2010-05-19 博客园 吴尔平gtest 的彩色信息显示看起来比较醒目,boost。test 的内存泄漏检查很实用。真希望两个功能在一个库里,可以省不少事情。不过如果想在作者们没有这么做之前结合使用这两个功能,下面的方法可以试。
1: #include <iostream>
2:
3: #include <gtest/gtest.h>
4: #pragma comment(lib, "gtestd_d.lib")
5:
6: #include <boost/test/unit_test.hpp>
7:
8: TEST(FooTest, test)
9: {
10: char *t = new char[2];
11: EXPECT_EQ(3, 3);
12: EXPECT_EQ(2, 3);
13: }
14:
15: using boost::unit_test::test_case;
16: void testf()
17: {
18: char *t = new char[2];
19: BOOST_CHECK(3 == 3);
20: BOOST_CHECK(2 == 3);
21: }
22:
23: using boost::unit_test::test_suite;
24: test_suite* init_unit_test_suite( int argc, char* argv[] )
25: {
26: std::cout << " gtest...
";
27: ::testing::InitGoogleTest(&argc, argv);
28: ::testing::UnitTest::GetInstance()->Run();
29:
30: std::cout << "
boost.test...
";
31: test_suite* ts = BOOST_TEST_SUITE( "" );
32: ts->add( BOOST_TEST_CASE( &testf ) );
33: return ts;
34: }
(具体使用 test case 时只用 gtest 的即可,里面两者都写仅仅是为了有个对比)gtest 1.3.0http://code.google.com/p/googletest/booost 1.8.0http://www.boost.org/output: