- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Qt 5.3.2 的 QTest 对类执行一些单元测试。我正在使用 VS2013 Express 来构建测试器。 VS 项目文件是使用 qmake 从 .pro 文件生成的。为了运行测试,我将 QTEST_MAIN 添加到我的源文件中。
项目构建并且测试器可执行工作正常。但是,我在查看结果时遇到问题(例如 PASS 输出)。当测试运行时,控制台窗口将打开,接收所有测试输出。如果测试完成,控制台窗口将立即关闭,我实际上看不到它显示的内容。特别是我看不到某些测试是否失败。
我想 QTest 使用 stdout 作为默认输出 channel 。所以我尝试了VS调试器选项“将stdout重定向到输出窗口”,但没有效果。
那么这应该如何工作?
测试输出实际上应该发送到新打开的控制台窗口吗?那为什么不保持开放呢?或者应该将整个测试输出发送到 VS 调试器输出面板?有没有办法重定向输出?
最佳答案
您是否安装了适合您的 Visual Studio
版本的 Visual Studio 插件
?如果没有,您应该从 qt-project.org/downloads 下载它.
我做了一个简单的qt test并在 Visual Studio
中导入 *.pro
文件并运行测试;对我来说,一切正常,窗口保持打开状态,显示测试的简历:
我建议写 example ,使用 Visual Studio 插件
将其导入到 Visual Studio 中并比较项目设置。很可能需要在某处更改标志才能使窗口保持打开状态。
您也可能需要Console (/SUBSYSTEM:CONSOLE)
链接器选项集。右键单击项目,转到项目Properties
,选择Configuration Properties>Linker>System
。对于右侧 Pane 中的 Subsystem
属性,单击右侧列中的下拉框。现在选择控制台 (/SUBSYSTEM:CONSOLE)
并重新运行测试(Ctrl+F5 而不仅仅是 F5) (1).
如果您在调试
模式下运行测试(即按F5),您的窗口将不会保持打开状态。如果您希望它保持打开状态,您需要在测试析构函数中添加 getch()
调用,当您的测试完成时,窗口将保持等待输入(例如 Enter
) >):
对于我的测试代码是:
#include <QtTest/QtTest>
#include <conio.h>
class TestQString: public QObject
{
Q_OBJECT
private slots:
void toUpper();
public:
~TestQString()
{
getch();
}
};
void TestQString::toUpper()
{
QString str = "Hello";
QCOMPARE(str.toUpper(), QString("HELLO"));
}
QTEST_MAIN(TestQString)
#include "testqstring.moc"
关于qt - 如何查看 QTest 结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26325901/
我正在尝试使用QTest进行一些测试。我有一个QListWidget,我想单击以获取选择。但是单击之后,什么也没有选择。有人有什么想法吗? 这是我的考试课 void TestGui::List() {
在 Qt 单元测试中,程序如何检索正在运行的测试的名称? 代码看起来像这样: #include class MyTest : public QObject { Q_OBJECT privat
我正在使用 Qt 5.3.2 的 QTest 对类执行一些单元测试。我正在使用 VS2013 Express 来构建测试器。 VS 项目文件是使用 qmake 从 .pro 文件生成的。为了运行测试,
在单元测试中,我尝试发送键盘快捷键 Command+N(在 Mac OS 上),它对应于我的应用程序中的菜单项。我正在使用 PySide.QtTest 模块。 在下面的代码中,我使用了 QTest.k
很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visit the help center . 关闭 1
你能比较流行的 C++ 单元测试框架和 Qt 的 QTest 吗? (cppunit、boost 测试、google 测试等。) 有什么优点缺点?谢谢。 注意:GUI测试对我们来说不是很重要。 最佳答
我有一个子项目,我将所有 QTest 单元测试放在其中,并构建一个运行测试的独立测试应用程序(即我从 Qt Creator 中运行它)。我有多个可以使用 qExec() 执行的测试类。但是我不知道执行
我刚开始使用 QT,希望进行单元测试。我找到了支持在我的应用程序外部进行测试的项目结构蓝图。 对于我的第一个测试,我想单击“退出”菜单点,检查 QMainWindow 的关闭操作是否真的被调用。 来自
我有一个小的测试程序,它通过我编写的库与服务器后端对话。该测试使用 QTest 框架并运行了一堆测试用例。在我的所有测试运行后,最新版本的测试程序开始出现段错误。输出类似于: ********* St
我尝试使用简单的序列测试拖放:mousePress + mouseMove + mouseRelease。但它不起作用。 我调查了 qtest 源,发现通过主调度程序 processEvent() 测
首先,我知道这个论坛中有非常相似的问题。但是,没有人能真正回答我的具体情况。 我有以下项目结构: |---Project_Root |---CMakeLists.txt |---bui
我正在创建一些自动化 GUI 测试 在我的应用程序中使用 QTest . 我可以使用以下命令从我的应用程序访问小部件: savePushButton = mainWindow->findChild("
我有一个 QT 应用程序,我想用 QTest 测试它。简要介绍一下我想做什么:我有一个主窗口,按钮 Settings 位于其中。如果我点击这个按钮,就会出现 QDialog。我想测试这是否真的发生了
我想在我的代码中使用 QTest 宏 QCOMPARE,但我收到错误。 QTestString.h #ifndef QTESTSTRING_H #define QTESTSTRING_H #inclu
这是我的代码: from PySide import QtCore, QtGui, QtTest import sys application = QtGui.QApplication(sys.arg
我正在使用 Qt 中的 QTest 编写一些单元测试。我还遇到了 QBENCHMARK 宏,它对其封装的代码进行基准测试。 我正在运行我的单元测试并对一些代码进行基准测试。 QBENCHMARK 报告
我第一次在 QtCreator 中进行单元测试,我想知道如何测试没有返回类型的函数。喜欢: rgb_process.h: class RGB_process : Process { public:
我对 Qt 很陌生,我需要使用 QTest 模拟点击命名空间和 QTest::mouseClick .我的问题是我想点击 QMenu条目,定义为 QAction ,但 mouseClick函数不允许我
我正在使用 QTestLib framework 在 QTableView 中为自定义验证器编写单元测试。最基本的测试用例之一可以这样描述: Double click the table cell i
我正在使用 QTestLib 库和 QTest 来运行我的单元测试。我在 Windows 7 上工作,并使用 Qt 4.8 和 MVSC 2010 编译器。当我使用以下方式运行测试时: QTest::
我是一名优秀的程序员,十分优秀!