相关疑难解决方法(0)

单元和功能测试基于PySide的应用程序?

我正在构建一个基于PySide 1.1.0的应用程序,并且一直在寻找好的示例来查看我的应用程序的单元和功能测试.我希望能够对UI进行功能测试(模拟点击,按键等),改变UI布局的UI插槽的单元测试(可能使用部分模拟的发送器和接收器),以及单元测试涉及小部件的代码,但不需要渲染任何窗口.

作为一个示例,当项目被添加到向QTreeView提供数据的模型(QAbstractItemModel派生对象)时,我动态地创建菜单栏中的一个菜单的子菜单.模型和子菜单必须保持同步,因此我希望能够编写一个单元测试,将数据提交给管理模型和子菜单的控制器,并断言模型和子菜单都已正确更新.

如果我可以避免,我宁愿不必在我的测试代码中设置QApplication.当我只关心验证小部件中的数据结构而不是它们的可视化时,我也不想显示任何窗口.

我在http://www.pyside.org或Google搜索中找不到任何合适的价值.有没有人有任何经验或知道我应该看的好示例代码?

python unit-testing qt4 pyside

19
推荐指数
1
解决办法
4957
查看次数

PySide2没有正确关闭基本示例

当我运行基本脚本时:

import sys
from PySide2.QtWidgets import QApplication, QLabel

app = QApplication(sys.argv)
label = QLabel("Hello World")
label.show()
app.exec_()
Run Code Online (Sandbox Code Playgroud)

这是第一次一切正常.但是,如果我第二次运行它,我得到:

File "../script.py", line 17, in <module>
app = QApplication(sys.argv)

RuntimeError: Please destroy the QApplication singleton before creating a new QApplication instance.
Run Code Online (Sandbox Code Playgroud)

我在Ubuntu机器上运行脚本.我在python2和python3中得到了同样的错误.

谢谢 !

python python-2.7 python-3.x pyside2

7
推荐指数
1
解决办法
573
查看次数

标签 统计

python ×2

pyside ×1

pyside2 ×1

python-2.7 ×1

python-3.x ×1

qt4 ×1

unit-testing ×1