class yourTestFixtureClass: public ::testing::test {
public:
yourTestFixtureClass( ) {
…
}
~yourTestFixtureClass( ) {
…
}
protected:
virtual void SetUp( ) override {
…
}
virtual void TearDown( ) override {
…
}
};
TEST_F (yourTestFixtureClass, TestName_A) {
…
}
TEST_F (yourTestFixtureClass, TestName_B) {
…
}
새로운 Test Fixture 생성 → SetUp() → {테스트 수행} → TearDown() → 소멸자
| Fatal assertion | Nonfatal assertion | Verifies |
|---|---|---|
| ASSERT_TRUE(condition); | EXPECT_TRUE(condition); | condition is true |
| ASSERT_FALSE(condition); | EXPECT_FALSE(condition); | condition is false |
| Fatal assertion | Nonfatal assertion | Verifies |
|---|---|---|
| ASSERT_EQ(expected, actual); | EXPECT_EQ(expected, actual); | expected == actual |
| ASSERT_NE(val1, val2); | EXPECT_NE(val1, val2); | val1 != val2 |
| ASSERT_LT(val1, val2); | EXPECT_LT(val1, val2); | val1 < val2 |
| ASSERT_LE(val1, val2); | EXPECT_LE(val1, val2); | val1 <= val2 |
| ASSERT_GT(val1, val2); | EXPECT_GT(val1, val2); | val1 > val2 |
| ASSERT_GE(val1, val2); | EXPECT_GE(val1, val2); | val1 >= val2 |
아래의 assertion 들은 두 개의 C 문자열을 비교함. string 객체를 비교하려면 위의 EXPECT_EQ, EXPECT 등의 assertion 을 사용할 것
| Fatal assertion | Nonfatal assertion | Verifies |
|---|---|---|
| ASSERT_STREQ(expected_str, actual_str); | EXPECT_STREQ(expected_str, actual_str); | the two C strings have the same content |
| ASSERT_STRNE(str1, str2); | EXPECT_STRNE(str1, str2); | the two C strings have different content |
| ASSERT_STRCASEEQ(expected_str, actual_str); | EXPECT_STRCASEEQ(expected_str, actual_str); | the two C strings have the same content, ignoring case |
| ASSERT_STRCASENE(str1, str2); | EXPECT_STRCASENE(str1, str2); | the two C strings have different content, ignoring case |