GitHub操作 pytest 退出码 134

huangapple go评论78阅读模式
英文:

github action pytest exit code 134

问题

以下是您提供的文本的翻译部分:

"So I am running pytest via github actions and a test that passes on my machine (both through direct command line and vscode testing) is erroring out and aborting in the container and idk why.":
"所以我正在通过GitHub操作运行pytest,我的机器上的测试通过了(无论是通过直接命令行还是VSCode测试),但在容器中出现错误并中止,我不知道为什么。"

"I don't see anything obvious in this traceback that would help me fix it, anyone know what to do from here?":
"在这个回溯中,我没有看到明显的东西可以帮助我修复它,有人知道从这里该怎么办吗?"

"I thought 134 was a memory error so i tried adding in a swap space from https://github.com/pierotofy/set-swap-space but that still didn't help":
"我以为134是一个内存错误,所以我尝试从https://github.com/pierotofy/set-swap-space中添加交换空间,但这仍然没有帮助。"

以上是您提供文本的翻译部分。

英文:

So I am running pytest via github actions and a test that passes on my machine (both through direct command line and vscode testing) is erroring out and aborting in the container and idk why.

============================= test session starts ==============================
platform linux -- Python 3.10.10, pytest-7.2.1, pluggy-1.0.0 -- /opt/hostedtoolcache/Python/3.10.10/x64/bin/python
cachedir: .pytest_cache
rootdir: /home/runner/work/jbuielCubesProject/jbuielCubesProject
collecting ... collected 4 items

tests/test_data.py::test_api_data_amount PASSED                          [ 25%]
tests/test_data.py::test_entry_in_database PASSED                        [ 50%]
tests/test_data.py::test_data_in_table PASSED                            [ 75%]
Fatal Python error: Aborted

Current thread 0x00007f6d807b6c40 (most recent call first):
  File "/home/runner/work/jbuielCubesProject/jbuielCubesProject/tests/test_data.py", line 55 in test_gui_info
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/_pytest/python.py", line 195 in pytest_pyfunc_call
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/pluggy/_callers.py", line 39 in _multicall
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/pluggy/_hooks.py", line 265 in __call__
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/_pytest/python.py", line 1789 in runtest
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/_pytest/runner.py", line 167 in pytest_runtest_call
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/pluggy/_callers.py", line 39 in _multicall
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/pluggy/_hooks.py", line 265 in __call__
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/_pytest/runner.py", line 260 in <lambda>
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/_pytest/runner.py", line 339 in from_call
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/_pytest/runner.py", line 259 in call_runtest_hook
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/_pytest/runner.py", line 220 in call_and_report
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/_pytest/runner.py", line 131 in runtestprotocol
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/_pytest/runner.py", line 112 in pytest_runtest_protocol
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/pluggy/_callers.py", line 39 in _multicall
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/pluggy/_hooks.py", line 265 in __call__
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/_pytest/main.py", line 349 in pytest_runtestloop
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/pluggy/_callers.py", line 39 in _multicall
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/pluggy/_hooks.py", line 265 in __call__
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/_pytest/main.py", line 324 in _main
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/_pytest/main.py", line 270 in wrap_session
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/_pytest/main.py", line 317 in pytest_cmdline_main
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/pluggy/_callers.py", line 39 in _multicall
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/pluggy/_manager.py", line 80 in _hookexec
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/pluggy/_hooks.py", line 265 in __call__
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/_pytest/config/__init__.py", line 167 in main
  File "/opt/hostedtoolcache/Python/3.10.10/x64/lib/python3.10/site-packages/_pytest/config/__init__.py", line 190 in console_main
  File "/opt/hostedtoolcache/Python/3.10.10/x64/bin/pytest", line 8 in <module>

Extension modules: charset_normalizer.md, xxsubtype, shiboken6.Shiboken, PySide6.QtCore, PySide6.QtGui, PySide6.QtWidgets (total: 6)
/home/runner/work/_temp/835fb4a2-07d9-4169-ac69-9365002eaa42.sh: line 2:  1885 Aborted                 (core dumped) pytest -v
tests/test_data.py::test_gui_info 
Error: Process completed with exit code 134.

I don't see anything obvious in this traceback that would help me fix it, anyone know what to do from here?

I thought 134 was a memory error so i tried adding in a swap space from https://github.com/pierotofy/set-swap-space but that still didn't help

def test_gui_info():
    # test 4 sprint 3
    QtWidgets.QApplication([]) # line 55 <-------
    MainWindow = QtWidgets.QMainWindow()
    ui = database_viewer(MainWindow)
    labelled_entries_dict = get_labelled_dict()
    ui.show_data(id=2, labelled_entries_dict=labelled_entries_dict)

    response = ui.rightLayout.itemAt(3).widget()
    assert response.text() == labelled_entries_dict[2][' First Name']

    response = ui.rightLayout.itemAt(5).widget()
    assert response.text() == labelled_entries_dict[2][' Last Name']

    response = ui.rightLayout.itemAt(11).widget()
    assert response.text() == labelled_entries_dict[2][' Email']

    response = ui.rightLayout.itemAt(13).widget()
    assert response.text() == labelled_entries_dict[2][' Organization Website']

    response = ui.rightLayout.itemAt(19).widget()
    if labelled_entries_dict[2][' Course Project'] == 'yes':
        assert response.isChecked() is True
    else:
        assert response.isChecked() is False

    response = ui.rightLayout.itemAt(20).widget()
    if labelled_entries_dict[2][' Guest Speaker'] == 'yes':
        assert response.isChecked() is True
    else:
        assert response.isChecked() is False

    response = ui.rightLayout.itemAt(23).widget()
    if labelled_entries_dict[2][' Internships'] == 'yes':
        assert response.isChecked() is True
    else:
        assert response.isChecked() is False

    response = ui.rightLayout.itemAt(30).widget()
    if labelled_entries_dict[2][' Summer 2023'] == 'yes':
        assert response.isChecked() is True
    else:
        assert response.isChecked() is False

答案1

得分: 1

在许多试错之后,我发现将这些添加到 GHA 中使其工作

在 runs-on: ubuntu-latest 下面:

env:
  DISPLAY: '':99.0''

然后在步骤的任何位置:

- uses: tlambert03/setup-qt-libs@v1
- name: build "display"
  run: |
        /sbin/start-stop-daemon --start --quiet --pidfile /tmp/custom_xvfb_99.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :99 -screen 0 1920x1200x24 -ac +extension GLX

实际上我没有使用 pytest-qt,但这个故障排除页面给出了这些答案,直到我偶然发现它才找到。

链接:https://pytest-qt.readthedocs.io/en/latest/troubleshooting.html

英文:

after a lot of trial and error I found that adding these to the GHA made it work

under runs-on: ubuntu-latest

env:
  DISPLAY: ':99.0'

then anywhere in the steps:

- uses: tlambert03/setup-qt-libs@v1
- name: build "display"
  run: |
    /sbin/start-stop-daemon --start --quiet --pidfile /tmp/custom_xvfb_99.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :99 -screen 0 1920x1200x24 -ac +extension GLX

im not actually using pytest-qt but this troubleshooting page gave these answer, it was very hard to find until I stumbled upon it eventually.

https://pytest-qt.readthedocs.io/en/latest/troubleshooting.html

huangapple
  • 本文由 发表于 2023年2月19日 09:13:00
  • 转载请务必保留本文链接:https://go.coder-hub.com/75497408.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定