gpt4 book ai didi

c++ - 如何使用 qtest 测试信号槽连接

转载 作者:搜寻专家 更新时间:2023-10-31 01:38:47 24 4
gpt4 key购买 nike

我刚开始使用 QT,希望进行单元测试。我找到了支持在我的应用程序外部进行测试的项目结构蓝图。

对于我的第一个测试,我想单击“退出”菜单点,检查 QMainWindow 的关闭操作是否真的被调用。

来自 Java 及其所有模拟框架,这是我想做的事情:

  1. 模拟点击菜单(或按键)
  2. 点击退出操作(或按键)
  3. 验证 QAction 的信号“triggered()”已发出
  4. 验证调用了 QMainWindow 的插槽“close”

我在网上阅读了 qtest 教程、KDE ​​文档和其他内容,但我无法使用 qtest 来表达(目前)。

我找到了 Qt UI testing: How to simulate a click on a QMenuBar item using QTest?它描述了类似的事情,但即使只有 1、2、3 被涵盖(而且我什至无法让它们工作)。

那么如何才能写出这样的测试用例呢?这可能吗?

最佳答案

为了测试信号,可以使用 QSignalSpy 类 http://doc.qt.io/qt-5/qsignalspy.html

但是您想要测试整个应用程序 - 而不是单个单元。为此,像 squish 或 ranorex(都是商业的)这样的 UI 测试工具更适合。

关于c++ - 如何使用 qtest 测试信号槽连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32290083/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com