qt 子项目包含另一个子项目_C++跨平台库QT学习 使用UnitTest单元测试入门

这篇博客介绍了如何在QT环境中创建子目录项目,然后在其中新建一个控制台项目和一个用于单元测试的子项目。通过实例详细说明了创建类MyCalc、编写测试用例,并展示了mycalctest.pro文件内容和测试用例文件test_mycalctesttest.cpp的设置。读者将学习到如何在QT中进行C++库的单元测试操作。
摘要由CSDN通过智能技术生成
20f5f2494c236f4e6cd1fb339639d238.png

一、新建子目录项目

在QT点击菜单 文件-新建文件或项目-其他项目-子目录项目:

8477c806ae75a5fa395bde70152f9aa5.png
1ba2aec40484c46096b8061127330b0a.png

二、新建控制台项目

然后继续建一个子项目:

336085f9349354e188547ee14df58177.png
98ec6baaea95bc49de8d23def97ab064.png

新建类文件后,项目如下:

0024a6571d1c4391b2eaa5a72f4a94e0.png

新建类MyCalc,后面会对这个类里的add方法进行测试:mycalc.h

class MyCalc{public:    int add(int a,int b);};

mycalc.cpp

#include "mycalc.h"int MyCalc::add(int a,int b){    return a+b;}

main.cpp

#include #include "mycalc.h"#include int main(int argc, char *argv[]){    MyCalc* calc= new MyCalc;    qDebug() << calc->add(1,2) << endl;}

三、新建测试用例子目录项目

在项目目录上点右键,选择新建子项目:

bddd6b865edf8b7f1ae7b2e344fd1363.png

选择其他项目-Qt单元测试:

ad6125977f5b20ad88a0a171a030625a.png
d472d1c3a7ce9381c55a82f53095678d.png
fc918650115389c127367197cfecf72b.png

新建后项目如下:

125122ccfc115beac8081c51aa113ae4.png

mycalctest.pro文件内容:

#-------------------------------------------------## Project created by QtCreator 2020-08-14T19:49:16##-------------------------------------------------QT       += testlibQT       -= guiTARGET = tst_mycalctesttestCONFIG   += consoleCONFIG   -= app_bundleTEMPLATE = appHEADERS +=   ../maincode/mycalc.hSOURCES += tst_mycalctesttest.cpp  ../maincode/mycalc.cppDEFINES += SRCDIR="$$PWD/"

测试用例文件test_mycalctesttest.cpp

#include #include #include #include "../maincode/mycalc.h"class MycalctestTest : public QObject{    Q_OBJECTpublic:    MycalctestTest();private Q_SLOTS:    void initTestCase();    void cleanupTestCase();    void testCase1();};MycalctestTest::MycalctestTest(){}void MycalctestTest::initTestCase(){qDebug() << "init" << endl;}void MycalctestTest::cleanupTestCase(){}void MycalctestTest::testCase1(){    QVERIFY2(true, "Failure");    MyCalc* calc=new MyCalc;    int ret = calc->add(1,2);    QVERIFY(3==ret);    QVERIFY(4==ret);}QTEST_MAIN(MycalctestTest)#include "tst_mycalctesttest.moc"

在子项目mycalctest点右键、运行

4db25f1dc32fb11f073f53ef302d386a.png

QT的单元测试还可以对GUI模拟鼠标键盘进行测试,以后有机会再具体讲解过程。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值