是否可以仅使用控制台而不使用UI使用wxWidgets运行单元测试?

时间:2019-04-11 16:49:45

标签: linux unit-testing gtk wxwidgets

我正在尝试对使用wxWidgets窗口的代码运行一些单元测试。在此过程中,将创建窗口,但从不显示。在具有显示功能的Linux上,这很好用,但是在没有X或任何其他UI /显示的构建系统上则不能。

我得到的错误是:“无法初始化GTK +,是否正确设置了DISPLAY?”

是否可以在没有显示的情况下对wxWidgets进行单元测试?我希望有某种方法可以使存根或“ null”显示不存在,但可以允许单元测试执行。

如前所述,我实际上不需要显示任何窗口,但是从具有UI的系统上的工作测试中,我确实需要初始化应用程序,并创建一个顶级窗口,如下所示:

wxEntryStart(argc, argv);
wxTheApp->OnInit();
wxFrame frame(nullptr, wxID_ANY, "Test Frame");
wxTheApp->SetTopWindow(&frame);

1 个答案:

答案 0 :(得分:0)

您可以设置Xvfb服务器(或Xvnc服务器),并将其用作虚拟显示器。