[英]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.