簡體   English   中英

如何使用 Python 和 PyQt 對我的 GUI 程序進行單元測試?

[英]How do I unit testing my GUI program with Python and PyQt?

我聽說單元測試是保持代碼正常工作的好方法。

單元測試通常將一個簡單的輸入放入一個函數,並檢查它的簡單輸出。 但是我如何測試 UI?

我的程序是用 PyQt 編寫的。 我應該選擇 PyUnit 還是 Qt 的內置 QTest?

有一個關於使用Python的單元測試框架,QTEST一個很好的教程在這里

這不是關於選擇一個或另一個。 相反,它是關於將它們一起使用。 QTest 的目的只是模擬擊鍵、鼠標點擊和鼠標移動。 Python 的單元測試框架處理其余的(設置、拆卸、啟動測試、收集結果等)。

作為另一種選擇,如果您更喜歡使用pytest還有pytest-qt

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

它允許您測試pyqtpyside應用程序,並允許模擬用戶交互。 這是其文檔中的一個小示例:

def test_hello(qtbot):
    widget = HelloWidget()
    qtbot.addWidget(widget)

    # click in the Greet button and make sure it updates the appropriate label
    qtbot.mouseClick(widget.button_greet, QtCore.Qt.LeftButton)

    assert widget.greet_label.text() == "Hello!"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM