qtestlib相关内容

如何使用QTestLib模拟鼠标滚轮事件[Qt5]

我很高兴使用QTestLib为我的Qt5基于UI的小部件编写测试。直到现在,当我试图找到一种方法来模拟鼠标滚轮事件时,它似乎并不缺少特性和方便的功能。 我看过official documentation和official example,但似乎想不出如何开始模拟鼠标滚轮事件。 这不存在吗?或者我错过了什么?我应该如何使用QTestLib创建虚拟鼠标滚轮事件? 推荐答案 对于 ..
发布时间:2022-02-27 10:56:38 其他开发

你如何在 Qt 中获得一个小部件的孩子?

我正在通过 Qt 的 KeyPress 函数模拟应用程序的 keyPresses.所有 KeyPresses 工作正常.但是,当我传递一个应该按下当前活动窗口的 OK 按钮的 QT::Key_Enter 或取消按钮的 QT::Key_Cancel 时,它什么也不做. 我在想也许,因为这些按钮没有焦点,而父窗口本身有焦点.你如何得到一个窗口的孩子?还是找到它上面的 OK 或 Cancel 按钮 ..
发布时间:2022-01-18 22:44:44 C/C++开发

我应该为 Qt 使用什么单元测试框架?

我刚刚开始一个需要一些跨平台 GUI 的新项目,我们选择了 Qt 作为 GUI 框架. 我们也需要一个单元测试框架.直到大约一年前,我们还在为 C++ 项目使用内部开发的单元测试框架,但现在我们正在过渡到在新项目中使用 Google 测试. 有没有人有将 Google Test 用于 Qt 应用程序的经验?QtTest/QTestLib 是更好的选择吗? 我仍然不确定我们希望在项 ..
发布时间:2021-12-09 17:19:37 其他开发

Qt:如何获取当前正在运行的窗口?

我正在编写一个模拟按键的测试应用程序,我想获得每次按键后显示的窗口.这是代码块. std::auto_ptrpForm(new MyForm(3,3));QTest::keyPress(pForm.get(), Qt::Key_0); 在此处按 0 后,会出现一个窗口,我想检查它是哪个窗口,以便稍后进行 QCompare/评估. 有什么想法吗? 更新: 我在使用时遇到分段错误 ..
发布时间:2021-09-14 19:06:09 C/C++开发

QT:获取对象的类名

我正在编写一个测试应用程序来模拟另一个应用程序的按键操作.对于每次按键,我都必须检查是否显示了正确的窗口/表单.所以我要做的是获取正在显示的窗口的指针并获取它的窗口标题.但是,并非所有窗口/窗体都显示窗口标题.所以我认为最好获取类的名称.我怎样才能得到班级的名字? QWidget *pWin = QApplication::activeWindow(); 当我尝试时: pWin->class ..
发布时间:2021-09-14 18:48:12 其他开发

如何在通过 QTestLib 对 Qt 应用程序进行单元测试时构建项目

我有我的 Qt 项目并且我正在使用 Qt Creator.我想对我所有的代码进行单元测试. 然而,我对 QTestLib 框架很陌生,但每个人都推荐它来测试基于 Qt 的源代码.现在我有点困惑如何使用应用项目构建测试项目. 我可以将所有源代码和测试代码放在同一个项目中吗?如果是这样,我该如何管理它们?我没有找到让我在一个项目中启动应用程序或开始测试的任何选项. 如果我把应用源代码和测试代 ..
发布时间:2021-09-14 18:47:50 其他开发

如何运行多个 QTest 类?

我有一个子项目,我在其中放置了所有 QTest 单元测试并构建了一个运行测试的独立测试应用程序(即我从 Qt Creator 中运行它).我有多个可以使用 qExec() 执行的测试类.但是我不知道执行多个测试类的正确方法是什么. 目前我是这样做的(MVCE): tests.pro QT -= guiQT += 核心 \测试库配置 += 控制台配置 -= app_bundle模板 = ..
发布时间:2021-09-14 18:45:47 C/C++开发

如何从 QTest 单元测试中编辑 QTableView 单元格?

我正在使用 QTestLib 框架.最基本的测试用例之一可以这样描述: 双击第三列第四行的表格单元格,将数字“5"附加到其内容中. 仅仅改变模型中的值或任何东西是不够的,测试用例应该像这样执行: 双击表格单元格将其设置为编辑模式 按 [结束] 键. 按 [5] 键. 注意:这个问题 有关于如何从代码中将表格单元格设置为编辑模式的答案,但是单元测试应尝试坚持人类用户的可能 ..
发布时间:2021-06-30 18:44:17 其他开发

PyQt5:QWebEngineView 中的鼠标单击和源代码

我有一个使用 PyQt-5.5.1 的工作脚本,我现在想将其移植到新的 PyQt 版本 (5.7).适应大部分事情都很好,但我面临两个主要问题:(1)执行(模拟)鼠标单击,(2)访问(假设:打印)当前显示的网页的 html 源代码分别为 QWebView 或 QWebEngineView. 例如,我可以在 PyQt-5.5.1 中使用 QWebView 执行以下操作: QTest.mous ..
发布时间:2021-06-24 20:07:30 Python

Qt应该使用什么单元测试框架?

我刚刚开始一个需要一些跨平台GUI的新项目,我们选择了Qt作为GUI框架. 我们也需要一个单元测试框架.直到大约一年前,我们为C ++项目使用了内部开发的单元测试框架,但现在我们正过渡到对新项目使用Google Test. 有人对使用Qt应用程序的Google Test有任何经验吗? QtTest/QTestLib是更好的选择吗? 我仍然不确定我们要在项目的非GUI部分中使用Qt ..
发布时间:2020-11-19 22:48:04 其他开发

如何在使用单个测试项目时将所有QtTestLib单元测试的结果组合到一个文件中?

在我们的项目中,我们使用QtTestLib进行单元测试。原因是整个项目已经尽可能使用Qt并且它是一个GUI应用程序,因此我们希望能够测试GUI界面。 我们的项目由MSVC,因此我们不希望每个测试都有单独的项目文件,因为它会使解决方案混乱。因此,我们为所有测试创建了一个项目。所有测试都应该在CIS(连续集成)上实现自动化,因此我们尝试使用XSLT转换通过XML格式的输出文件将测试插入到Huds ..
发布时间:2020-09-27 06:49:31 C/C++开发

如何通过QTest访问QMessageBox

我正在使用 QTest 在我的应用程序中创建一些自动化的 GUI测试. 我可以使用以下命令从应用程序中访问小部件: savePushButton = mainWindow->findChild("savePushButton"); 它工作正常,但是现在我必须单击 QMessageBox 的“确定"按钮. 我在应用程序中这样创建了 QMessage ..
发布时间:2020-07-05 01:34:30 其他开发

如何使用QtTest库访问QAction?

我在QTableWidget(结果表)中有一个弹出菜单.在我的类的构造函数中,我设置了上下文菜单策略: resultTable->setContextMenuPolicy(Qt::CustomContextMenu); connect(resultTable, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(popUpMenuRe ..
发布时间:2020-07-05 01:34:12 其他开发

使用Jenkins xUnit插件显示QTestlib的结果

我正在尝试将Jenkins xUnit插件用于Qt单元测试项目,但是我无法使其工作... 这是我到目前为止所做的: 首先,我使用qmakebuilder插件构建我的单元测试项目(向qmakebuilder插件提供.pro),然后添加一个Execute Shell构建部分 我首先在其中找到rm -f testResult xml文件,然后,我使用-xunitxml标志运行测试二进制文件, ..
发布时间:2019-09-02 20:44:48 其他开发

如何写一个测试用例的qmake文件?

我只是不明白什么是一个程序和一个测试的Qt项目的总体布局... QTest教程的项目只有测试程序,但我的项目已经有另一个程序。如果我添加测试用例,它声称“main()的多重定义”,因为 QTEST_MAIN 实际上是另一个 main()。 另外,我在我的测试类中得到了“未定义的vtable引用”,不知道为什么。 我使用Qt 5.2.1 这是我的项目文件: ----- ..
发布时间:2016-11-02 02:27:24 C/C++开发

你如何得到一个小部件的孩子在Qt?

我通过Qt的KeyPress函数模拟keyPresses到应用程序。所有的KeyPresses工作正常。但是,当我传递一个 QT :: Key_Enter ,它应该按下当前活动窗口的确定按钮,或 QT :: Key_Cancel 为取消按钮,它什么也不做。 我想也许,因为这些按钮没有焦点,而父窗口本身有它。你怎么得到窗口的孩子?或者找到OK或Cancel按钮,这样你可以将其设置为active ..
发布时间:2016-10-23 21:59:17 C/C++开发

Qt UI测试:如何模拟使用QTest QMenuBar项目上的点击?

我正在尝试从QMenuBar模拟鼠标点击QMenu项目,例如点击“另存为”QAction使用QTestLib框架。 解决方案 任何想法? / div> 可能这个问题与问题所有者无关,但我认为这对其他人可能有帮助。 不像 QToolBar , QMenu 没有方法 widgetForAction 。我发现一个简单的解决方法为这种情况。尝试弹出菜单与 QTest :: mouseC ..
发布时间:2016-10-23 12:30:37 C/C++开发