解读sample4
说明
被测试代码文件 | sample4.h、sample4.cc |
测试代码文件 | sample4_unittest.cc |
官网上如是描述sample4:
Sample #4 is another basic example of using Google Test.
sample4的代码文件可以直接添加到前面sample使用的工程中进行编译。
理解被测试代码
被测试代码是一个很简单的类:class Counter
理解测试代码
sample4中使用了TEST宏来组织单元测试代码,test函数就只有一个,实现也非常简单:
1 TEST(Counter, Increment) { 2 Counter c; 3 4 // EXPECT_EQ() evaluates its arguments exactly once, so they 5 // can have side effects. 6 7 EXPECT_EQ(0, c.Increment()); 8 EXPECT_EQ(1, c.Increment()); 9 EXPECT_EQ(2, c.Increment()); 10 }
第5行注释所说的“side effects”实在耐人寻味,我到现在都没弄明白sample4的用意何在。