我在Visual Studio中的gTest中使用了QApplication对象。
int argc = 0;
char **argv = 0;
QMainWindow *window;
TEST() {
app = new QApplication(argc, argv);
window = new QMainWindow();
// Test Execution
// Data gathering
app.exec();
delete window;
window = new QMainWindow();
delete app;
app = new QApplication(argc, argv);
// Test Execution
// Data gathering
app.exec();
}
它运作良好。
如果我使用与Linux相同的代码段,并且在exec()
的第二次调用中生成的窗口为空,我必须终止执行。
使用Linux时缺少什么。
进行两次单独测试无效
答案 0 :(得分:0)
Ronny Brendel在评论中提出了正确的问题。
解决方案不是重新初始化QApplication。
delete app;
app = new QApplication(argc, argv);
必须删除。