[英]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
它允許您測試pyqt
和pyside
應用程序,並允許模擬用戶交互。 這是其文檔中的一個小示例:
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.