我正在尝试使用Google Test测试文档阅读器。
我的代码组织如下:有一个Document
类打开文件。一个文档包含一个或多个Element
,它是struct
,其指针(field
)指向wstring和value
。
显然我想打开文件一次,然后循环各种Elements
。
class DocumentTest : public ::testing::Test {
protected:
virtual void SetUp() {
string path = "path/to/file";
Document doc;
doc.Open(path);
}
Element* el;
el = doc.Read();
};
TEST_F(DocumentTest, ReadTest) {
while (file has still elements) {
wchar_t* expectedField = L"expectingThis";
wchar_t* readString = el->field;
EXPECT_EQ(expectedField,readString);
}
但这显然不起作用。我应该在哪里声明我的初始代码?
答案 0 :(得分:1)
https://github.com/google/googletest/blob/master/googletest/docs/advanced.md
一般来说,googletest允许三种不同的资源管理模式:
SetUp
和TearDown()
(在每个测试功能之前和之后运行)SetUpTestCase()
和TearDownTestCase()
(在每个课程之前和之后运行,或“案例”)Environment
类。