Qt单元测试浅析】的更多相关文章

Qt单元测试框架,使用于基于Qt的应用程序和库,先从一个简单的demo工程说起吧. 我们可以通过QtCreator来创建一个简单的Qt单元测试工程,夏天到了,这个demo工程的名字就叫Summer好了,创建过程中其它选项默认,完成后生成两个文件:Summer.pro和tst_summertest.cpp,先来看一下这两个文件. Summer.pro—— QT       += testlib QT       -= gui TARGET = tst_summertest CONFIG   += …
版权声明:若无来源注明,Techie亮博客文章均为原创. 转载请以链接形式标明本文标题和地址: 本文标题:Qt单元测试(QTestLib)     本文地址:http://techieliang.com/2017/12/483/ 文章目录 1. 创建 2. 基本操作 3. 高级操作  3.1. 命令行操作-可以输出调试结果到文本  3.2. GUI测试  3.3. 结果可视化-AutoTest插件  3.4. 可以用到的测试宏命令  3.5. 单元测试注意事项  3.6. 被测类为单例时 1.…
优点: QTestLib提供了单元测试框架的基本功能,并提供了针对GUI测试的扩展功能. 特性 详细描述 轻量级 QTestlib 只包含 6000行代码和 60个导出符号. 自包含 对于非GUI测 试,QTestlib只需要Qt核心库的几 个符号. 快速测试 QTestlib不需要特殊的测试执行程序,不需要为测试而进行特殊的注册. 数据驱动测试 一个测试程序可以在不同的测试数据集上执行多次. 基本的GUI测 试 QTestlib提供了模拟鼠标和键盘事件的功能. IDE友好 QTestlib的输…
  使用Qtcreator 自带的单元测试工具框架QTestlib进行测试. 一.创建一个单元测试程序 new project->other project ->Qt unit test 二.文件列表: qtestlib/tutorial1/testqstring.cpp qtestlib/tutorial1/tutorial1.pro 假设我们要测试QString类的行为.首先,需要一个用于包含测试函数的类.这个类必须从QObject继承: class TestQString: public…
单元测试之作用要完成测试用例,保证设计上的耦合依赖通过测试用例,保证覆盖率,提高程序质量 QTest一些有用的静态函数QTest::qExecQTest::qSleepQTest::qWait   例子 .pro项目文件中加入QT += testlib int main(int argc, char *argv[]){    QCoreApplication app(argc, argv);    SelfUnitTestClass tc;    MyUnitTest mt;    QTest:…
事件系统在 Qt 中扮演了十分重要的角色,不仅 GUI 的方方面面需要使用到事件系统,Signals/Slots 技术也离不开事件系统(多线程间).我们本文中暂且不描述 GUI 中的一些特殊情况,来说说一个非 GUI 应用程序的事件模型. 如果让你写一个程序,打开一个套接字,接收一段字节然后输出,你会怎么做? int main(int argc, char *argv[]) { WORD wVersionRequested; WSADATA wsaData; SOCKET sock; int e…
测试的意义   人们针对一个具体问题,通过分析和设计,最后用编程语言写出了一个程序,如果它通过了语言解释器(编译器)的检查,可以运行了,那么下一步的工作就是设法确认它确实满足了我们需求.这篇文章就是讨论怎么确认程序是否满足用户提出的需求. 满足需求,换言之就是功能正常,确认功能正常可以从以下几个方面确认: 定义的函数对于所有正确的参数都能返回正确的结果 写出的程序对所有合适的输入都能产生正确的输出   量化后的做法就是通过一系列的试运行,检查程序的行为.输入和输出,如果检查中发现了问题,就纠正.…
1. Qt5位置相关函数 Q提供了很多关于获取窗体位置及显示区域大小的函数,如x().y()和pos().rect().size().geometry()等,统称为"位置相关函数"或"位置函数".几种主要位置函数及其之间的区别如图所示. 具体的相关函数的用法,会在后面的实例中进行讲解 2. Qt5基础图形的绘制(实例) 绘图的基本流程,继承Qwidget类 ,重写paintEvent函数 这个函数基本写法如下,注释已经写得非常的清楚了 此实例的具体实现包含两个部分的…
工作中,感觉pro文件的有些内容真不太懂,现系统性的学习一下.于此备录,分享共勉. 为了更好的理解,先创建一个简单的工程作为实践. [1]创建一个pro文件 1.1 新建proDemo工程.步骤如下:Qt Creator--->New Project--->应用程序--->Qt Widgets Application--->名称为:proDemo(创建路径自己拟定,本地为F:\Source\proStudy)--->类信息保持不变--->完成 1.2 提取pro文件.在…
安装完PyQt后我们去看看这个库里面有些什么cd /usr/lib/python3/dist-packages/PyQt5/  && ls都是些.so的动态链接库,这就是为什么我们在安装pyqt前要先安装sip的缘故了sip就是用来调用这些动态库的,想要了解更多sip知识请自行百度,这里不是我们要讲的重点这里每一个动态库就是一个模块,我们要说的是这些模块都包含那些功能,以便以后我们要做东西的时候才知道该导入那些库,比如我们的软件里面需要一个播放媒体的功能,你至少要知道这个功能包含在QtMu…