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

问题描述 投票:1回答:1

我正在尝试对使用wxWidgets窗口的代码运行一些单元测试。在此过程中,窗口已创建,但从未显示。这在显示器可用的Linux下可以正常工作,但在没有X或任何其他UI /显示的构建系统上则不行。

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

是否可以在没有显示器的情况下对wxWidgets进行单元测试?我希望有一些方法可以只有一个实际上不存在的存根或“空”显示,但允许单元测试执行。

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

wxEntryStart(argc, argv);
wxTheApp->OnInit();
wxFrame frame(nullptr, wxID_ANY, "Test Frame");
wxTheApp->SetTopWindow(&frame);
linux unit-testing gtk wxwidgets
1个回答
0
投票

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

© www.soinside.com 2019 - 2024. All rights reserved.