我已经将容器拉到
circleci/python:3.6.8-stretch本地,克隆了您的存储库并尝试执行测试,但是我可以重现该错误。
首先要做的是为Qt运行时启用调试模式,以便它输出一些有关错误的信息。这可以通过设置环境变量来完成
QT_DEBUG_PLUGINS:
$ QT_DEBUG_PLUGINS=1 pytest -sv
现在可以立即清除运行测试的容器中缺少的内容。上面命令输出的摘录:
Got keys from plugin meta data ("xcb")QFactoryLoader::QFactoryLoader() checking directory path "/usr/local/bin/platforms" ...**Cannot load library /home/circleci/.local/lib/python3.6/site-packages/PySide2/Qt/plugins/platforms/libqxcb.so: (libxkbcommon-x11.so.0: cannot open shared object file: No such file or directory)**QLibraryPrivate::loadPlugin failed on "/home/circleci/.local/lib/python3.6/site-packages/PySide2/Qt/plugins/platforms/libqxcb.so" : "Cannot load library /home/circleci/.local/lib/python3.6/site-packages/PySide2/Qt/plugins/platforms/libqxcb.so: (libxkbcommon-x11.so.0: cannot open shared object file: No such file or directory)"qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx, webgl, xcb.Aborted (core dumped)修复很容易-安装
libxkbcommon-x11-0软件包:
$ sudo apt update && sudo apt install -y libxkbcommon-x11-0
将此行添加到CircleCI配置中(在测试作业之前的某个位置,例如在安装软件包依赖项的作业中),然后测试应该可以正常运行。
除此之外,
QT_DEBUG_PLUGINS=1全局设置很有意义,这样您以后就可以对最终的Qt运行时失败做出反应。
找不到xdpyinfo,无法检查X启动!请安装xdpyinfo!
如果要消除该警告,请安装
x11-utils:
$ sudo apt install x11-utils



