Qt高级

您所在的位置:网站首页 鼠标宏的原理和使用方法 Qt高级

Qt高级

2024-07-12 12:14:20| 来源: 网络整理| 查看: 265

Qt高级——QTestLib单元测试框架 一、QTestLib简介 1、QTestLib简介

QTestLib是Qt提供的一种针对基于Qt编写的程序或库的单元测试框架。QTestLib提供了单元测试框架的基本功能,并提供了针对GUI测试的扩展功能。

2、QTestLib特性

QTestLib是为了简化QT程序或库的单元测试工作而设计的。 QTestLib特性如下: A、轻量级:QTestlib只包含6000行代码和60个导出符号 B、自包含:对于非GUI测试,QTestlib只需要Qt核心库的几个符号。 C、快速测试:QTestlib不需要特殊的测试执行程序,不需要为测试而进行特殊的注册。 D、数据驱动测试:一个测试程序可以在不同的测试数据集上执行多次。 E、基本的GUI测试:QTestlib提供了模拟鼠标和键盘事件的功能。 F、基准测试:QTestLIB支持基准测试并提供多种测量后端。 G、IDE友好:QTestlib的输出信息可以被Visual Studio和KDevelop解析。 H、线程安全:错误报告是线程安全的、原子性的。 J、类型安全:对模板进行了扩展使用,防止由隐式类型转换引起的错误。 K、易扩展:用户自定义类型可以容易地加入到测试数据和测试输出中。

3、QTestLib API

所有公有的方法都在QTest命名空间中。另外,QSignalSpy类为Qt的信号和槽提供了简单的内省机制。

4、AutoTest插件

默认测试结果以纯文本形式显示在控制台(应用程序输出标签),不够直观,可使用AutoTest插件实现可视化效果。 通过Help->About Plugins->Utilities,选中AutoTest,重启Qt Creator,然后在下方会多出TestResults的标签,可直接在此标签点击上方的运行按钮运行所有测试,同时在“Tools-Tests-Run All Tests”也可运行所有测试。 此插件可以在运行单元测试后以红、绿色表示明确标记处运行结果,并且以Case为单位显示,可以展开看到具体每一个测试用例的结果。

二、QTestLib单元测试原理 1、QTestLib单元测试原理简介

原理:输入测试数据表和结果数据表,与实际值比较。

2、测试类

测试类需要从QObject类继承,类中需要加入一个或者多个私有槽。每一个私有槽都是一个测试函数,但有4种私有槽不能作为测试函数,它们由测试框架执行,可为整个测试程序或当前测试函数进行初始化和清除操作。 initTestCase():在第一个测试函数执行前调用。 cleanupTestCase():在最后一个测试函数执行后调用。 init():在每一个测试函数执行前调用。 cleanup():在每一个测试函数执行后调用。 如果initTestCase()函数执行失败,任何测试函数都不会执行。如果init()函数执行失败,紧随其后的测试函数不会被执行,测试会继续处理下一个测试函数。 QTest::qExec(QObject* testClassObject)函数用于执行测试对象中所有的测试函数。

3、测试函数

对于一个要测试的目标函数,需要使用两个函数进行测试:testFunctionName()和testFunctionName_data()。 testFunctionName_data:数据提供,在函数体中写入测试数据。 testFunctionName:测试的实体,读取testFunctionName_data函数中的数据表,并逐行进行测试。如果测试结果与数据表中的结果不同,则认为测试失败。

4、测试数据构建

数据由QTest::addColumn < T > (name)和QTest::newRow(name)



【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭