0

继续上一个问题

该要求适用于 Google 测试。一旦我谷歌测试轨道测试案例"Rasmi"。它应该重新运行,Hi然后它将运行Rasmi。说清楚:-

vect.push_back("Hello"); 
vect.push_back("Hi"); 
vect.push_back("Rasmi"); 
for(vect<string>::iterator it = vect.begin(); it != vect.end(); ++it) 
{  
if(*it == "Rasmi") // If it encounters "Rasmi"     
{ 
//it--;    
int index = it - vect.begin ();       
vect.insert(vect.begin()+2, "Hi");  
it = vect.begin () + index;    
}    
cout << *it; 
} 

在这种情况下,当它重新运行测试用例时,Hi它只是复制并粘贴先前执行的测试用例。这就是测试用例Rasmi失败的原因。但是,如果所有运行都没有任何条件,例如

Hello->Hi->Rasmi... The execution becomes successful.

请帮助我如何重新初始化 GoogleTest。

4

1 回答 1

0

如果您使用的是单例,那么之前的测试可能会留下一些东西(我们目前工作的地方有这个问题)。

每个测试如何在退出之前清理它对全局对象所做的任何更改?

于 2012-09-13T11:09:22.077 回答