问题标签 [qttest]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 在 Qt 单元测试中检测分段错误
SIGSEGV
是否可以在 Qt 测试库中检测分段错误( )?
在我的testXXX()
方法中,会引发分段错误,导致写入核心文件。有趣的是,该QTest::qExec()
方法从相关方法返回 0。
即使在分段错误之后,Qt 测试框架仍然以相同的 PID 运行!!!*
我尝试使用sigaction()
系统调用设置信号处理程序,但这也不起作用。
欢迎和赞赏任何建议。
boost-test - Boost Test 和 QtTest 内存访问冲突与 Botan
我一直在努力解决这个问题,到目前为止还无法让它发挥作用。使用 botan 的简单 main 可以正常工作,但是当我将相同的代码放在单元测试中时,它会失败。
--
然后我尝试将 init 放在主入口点,如下所示:
它们都显示相同的错误:
运行 1 个测试用例...未知位置(0):“rsa_key_generation”中的致命错误:在地址 0x00141000 发生内存访问冲突,同时尝试读取无法访问的数据
*** 在测试套件“密码学测试”中检测到 1 个故障检测到内存泄漏!转储对象 -> {670} 位于 0x0000000000221380 的正常块,16 个字节长。数据:78 EA 13 00 00 00 00 00 00 00 00 00 00 00 00 00 对象转储完成。
仅作记录,我尝试过的简单压缩测试或我所做的任何事情都可以正常工作,但是当我尝试使用植物初始化创建测试时,无论我尝试什么都会失败。
编辑:我已经尝试过使用 Qt Test 并且发生了同样的情况。它真的很奇怪。有没有人经历过这样的事情?谁能重现这个?
c++ - Qt:从多个测试类运行单元测试并汇总所有测试类的输出
Qt 自带QTest
,还有一些文档:比如官方教程。
但是,QTest
鼓励您将单元测试组织为单独的可执行文件。为此有一个特殊的宏,它生成main()
:QTEST_MAIN()
老实说,我真的不喜欢这种方法:通常,一次运行所有测试会更有用,以确保最近的更改没有破坏任何东西。有时,屏蔽某些测试或执行某些单独的测试很有用,但这是一个例外,而不是规则。
所以,我想一次运行所有的测试。好的,我可以编写自己的main()
代码来执行我想要的所有测试,比如:
它确实运行了所有测试,但问题是我没有方便地总结所有测试。说,对于上面的两个测试,我有两个单独的摘要:
在发生错误的情况下返回status
非零的事实肯定会有所帮助,但如果我也有摘要会更有帮助:
从我所见,这是不可能的:我找不到以编程方式获取通过、失败、跳过和列入黑名单的测试数量的方法:qExec()
只是QTest
命名空间中的一个函数,因此,不可能在它之后收集一些额外的信息执行。
好吧,可以解析输出字符串,但是,呃......
对我来说,它看起来像糟糕的设计。作为一个类创建可能会好得多QTest
,然后创建它的实例并向它提供一些测试类。然后,可以从实例中收集一些附加信息。
或者,也许我错过了什么。
所以,问题是:是否有可能获得QTest
所有单元测试类的摘要输出?
c++ - Qt Creator 中的单元测试(非 Qt)C++ 代码?
我有一个不使用 Qt 的 C++ 项目。我使用 Qt Creator 作为我的 IDE,因为它非常方便。
我在这里阅读了 Qt Creator 中的单元测试,我认为 Qt Test 似乎相当不错。有没有办法在我的非 Qt C++ 项目中使用 Qt Test?
请注意,我的 PC 中安装了 Qt 库,我正在使用这些库进行编程。但我不希望我发布的编译程序依赖于 Qt 库。
此外,我在使用 Visual Studio 时喜欢的一个功能是每次构建项目时都会自动运行测试。我可以对 Qt Creator 做同样的事情吗?
顺便说一句,如果你能推荐另一个我可以在 Qt Creator 中轻松使用的单元测试框架,那也很好。
user-interface - 如何创建 Qt-Quick 测试
我必须创建一个单元测试。
但首先,我必须弄清楚该怎么做。编写了一个 QtQuick2-App,现在我想用 GUI 进行单元测试。使用 GUI 进行单元测试的步骤是什么?阅读 Qt 文档后,我无法从测试开始产生任何想法。
希望有人能帮助我。
编辑tst_button.qml
:添加到我的项目后,我能够运行一些测试tst_test.cpp
(main.cpp 现在在评论中)。这是正确的方法,还是我应该为测试创建一个新项目?如果是,需要什么样的项目?最后一个问题:例如,我是否需要建立我MainForm
的按钮?
tst_button.qml
tst_test.cpp
qt - Qt Quick 的单元测试
我对 Qt 和 Qt Quick 很陌生。我正在验证 Qt Quick 的 Qt Test 单元测试框架,但我无法理解如何运行测试。这就是我所拥有的,我创建了一个具有以下结构的 SUBDIRS 项目:
“项目”是要测试的应用程序,我的测试用例在“ProjectTest/Resources/qml.qrc/tst_gui.qml”中。
tst_gui.qml:
我在“Project/Resources/qml.qrc/main.qml”中有一个 ID 为“click_button”的按钮,我想模拟它。当我运行测试项目时,我收到消息失败:
我确定我做错了什么。有人可以帮忙吗?
c++ - Qt 测试命令行选项
我对 Qt 很陌生,并且正在验证 Qt Test 单元测试框架。我正在使用 Qt 5.5。我能够使用 Qt 宏创建测试用例并从 Qt Creator 运行它们,但是从命令提示符运行时遇到问题。具体来说,我无法使用 Qt Test 提供的日志记录选项。
这就是我正在做的事情:
- 使用 Qt Creator 创建了一个 Qt 测试项目
- 使用 Qt Creator 构建项目
- 可执行文件在“project_directory/debug”文件夹中创建
- 从调试文件夹打开命令提示符
- 运行以下命令:
QtTestValidation5.exe –xml
QtTestValidation5.exe -o results.txt, txt
- 所有测试都已执行,但文件夹中没有保存任何内容
我想将测试结果记录为 xml、csv 和文本文件格式。有人可以帮忙吗?
c++ - 使用 QTestLib 测试文件的打开
我是单元测试和 Qt 框架的新手。我被分配写一个单元测试来测试文本文件的打开。
我看过 Qt 测试的教程。但我不知道如何进行。(我必须使用 QTestLib)。请指导我应该怎么做。
Boost 库用于打开 csv 和分隔文本文件以在应用程序中导入数据。
c++ - Qt测试如何在发出信号时停止执行
我目前正在测试一个 Qt 应用程序。我必须构建一个测试来检查 csv 文件的正确输入和输出。
问题:
数据正在异步读取,我的测试程序在数据加载之前结束,这是我得到的输出。
程序流程:
有一个类 AsyncLoader 加载数据。数据读取完成后,它会发出 completed() 信号。
因此,我修改了测试程序以包含QEventLoop。代码如下所示
但是有了这个,我得到一个“子进程错误:FailedToStart ”
有没有办法测试异步单元?
我正在使用 Qt 5.4.2 版,QMake 3.0 版
qt - 您如何编写生成 BFAIL 和 BPASS 的失败 Qt 测试?
在搜索 Qt 文件以查找所有不同的 Qt 测试结果时,我遇到BPASS
了BFAIL
. 我想写一些通过/失败的测试。问题是,我找不到任何人编写生成这些结果的测试的例子,而且我的修补也没有导致这种情况。
我必须安装源代码以进行更多检查,但是有人知道如何从运行 Qt 测试中获取BPASS
/结果吗?BFAIL
我假设它用于基准测试,但我还没有编写任何生成特殊BPASS
/BFAIL
消息的基准测试,只是您的典型PASS
/ FAIL!
/ XPASS
/ XFAIL
。