我对我的(python)Qt gui 进行了一些单元测试,这些测试需要 QApplication 实例,但创建一个对我来说总是失败(即以核心转储和应用程序中止结束QApplication()
)。到目前为止我尝试过的是:
- 创建方法:
- 简单
app = QApplication()
的模块级别 app = QApplication(['--platform offscreen'])
- 使用来自 pytest-qt 的夹具来管理 QApplication 对象的创建,即传递
qtbot
给我的测试
- 简单
- 我什至尝试过qt的两个python端口,即:
- PyQt5
- PySide2
- 虚拟屏幕:
- 我试过跑步
xvfb
- 我也试过
herbstluftwm
在 Xvfb 上使用窗口管理器 - 我已经尝试按照 QApplication instance/qtbot fixture
x11-utils libxkbcommon-x11-0
中的建议进行安装,导致 travis-ci 中止和核心转储
- 我试过跑步
我尝试使用https://github.com/nektos/act在本地调试此问题,但使用此方法的问题在我添加之前是不可重现的(即一切都按预期工作)herbstluftwm
,即只有我能够做到实现的是,在本地它也开始失败。
我还能检查什么?您是否看到在 github 操作上成功创建了 QApplication?顺便提一句。如何让 Qt 的输出在 github 操作中可见?(我已经添加env: QT_DEBUG_PLUGINS: 1
,但看不到任何错误)