gtest TEST_F 的使用模板(例子)

在Visual Studio 21-7 环境中:(竟然可以变量名直接使用汉字)

#pragma once
#include "stdafx.h"
#include <gtest/gtest.h>



class 我的全局环境设置 : public testing::Environment
{
public:
    virtual void SetUp()
    {
        std::cout << "全局环境启动 SetUP" << std::endl;
    }

    virtual void TearDown()
    {
        std::cout << "全局环境完成 TearDown" << std::endl;
    }

	我的全局环境设置() { std::cout << "全局环境的构造函数" << std::endl; }
    ~我的全局环境设置() { std::cout << "析构函数" << std::endl; } //no use

};



class 套装例子 : public testing::Test
{
protected:
    static void SetUpTestCase()
    {

        std::cout << "测试套装启动 SetUpTestCase" << std::endl;
    }
    static void TearDownTestCase()
    {

        std::cout << "测试套装完成 TearDownTestCase" << std::endl;
    }

protected:
    virtual void SetUp()
    {
        std::cout << "个例测试启动 SetUp" << std::endl;
    }

    virtual void TearDown()
    {
        std::cout << "个例测试完成 TearDown" << std::endl;
    }
};

TEST_F(套装例子, 套装例子1)
{

}

TEST_F(套装例子, 套装例子2)
{

}

#include "stdafx.h"
#include <gtest/gtest.h>
#include "JFgTest.h"



int main(int argc, _TCHAR* argv[])
{
	testing::AddGlobalTestEnvironment( new 我的全局环境设置);
	testing::InitGoogleTest(&argc, argv);
	int a = RUN_ALL_TESTS();

	system("pause");
	return a;
}

全局环境的构造函数
[==========] Running 2 tests from 1 test case.
[----------] Global test environment set-up.
全局环境启动 SetUP
[----------] 2 tests from 套装例子
测试套装启动 SetUpTestCase
[ RUN      ] 套装例子.套装例子1
个例测试启动 SetUp
个例测试完成 TearDown
[       OK ] 套装例子.套装例子1 (3 ms)
[ RUN      ] 套装例子.套装例子2
个例测试启动 SetUp
个例测试完成 TearDown
[       OK ] 套装例子.套装例子2 (3 ms)
测试套装完成 TearDownTestCase
[----------] 2 tests from 套装例子 (8 ms total)


[----------] Global test environment tear-down
全局环境完成 TearDown
[==========] 2 tests from 1 test case ran. (21 ms total)
[  PASSED  ] 2 tests.
请按任意键继续. . .

posted on 2018-03-19 15:48  johnphan  阅读(2213)  评论(0编辑  收藏  举报

导航