当前位置: 首页 > wzjs >正文

网站制作价格关键洞察力

网站制作价格,关键洞察力,网站做镜像的有什么用,校园网站建设公司Qt Test Qt Test 是 Qt 开发人员发布的一个单元测试框架,用于测试基于 Qt 框架的应用程序或库。它提供了单元测试框架中常见的所有功能以及用于测试图形用户界面的扩展。 1.自动化测试包络ui测试>接口测试>单元测试;现问如何使用Qt进行单元测试&…

Qt Test

Qt Test 是 Qt 开发人员发布的一个单元测试框架,用于测试基于 Qt 框架的应用程序或库。它提供了单元测试框架中常见的所有功能以及用于测试图形用户界面的扩展。

1.自动化测试包络ui测试>接口测试>单元测试;现问如何使用Qt进行单元测试?

==》通过Qt的 Qt Test 模块来编写测试用例。

2.我们想测试,qos/qosbrowser/src/helper/filehelper.cpp中的readAllTxt和joinPath方法;该怎么进行?

QString FileHelper::readAllTxt(const QString &filePath)
{QFile file(filePath);if (file.exists() && file.open(QIODevice::ReadOnly)){QByteArray data = file.readAll();file.close();return data;}throw "读取文件失败";
}
​
​
QString FileHelper::joinPath(const QString &path1, const QString &path2)
{QString path = path1 + "/" + path2;QStringList pathList = path.split(QRegExp("[/\\\\]"), Qt::SkipEmptyParts);path = pathList.join("/");return QDir::cleanPath(path);
}

==>下面的实现可解决。

注:当我们要测试某个类时,就创建一个对应的工程;

实现

创建子项目

新建一个test项目的子项目:取名testFileHelper

这个单元测试的项目针对的是 FileHelper的测试;

创建完项目之后,结果如下:

编写测试用例

接着我们就在tst_testfilehelper.cpp中大作文章,做法如下:

1我们通过定义信号槽来运行测试用例;且这些槽函数都是test_,表示运行测试用例的标志。下面我们定义两个测试用例:

void test_readAllTxt();void test_joinPath();

2.下面这两个函数表示在运行测试用例之前进行的初始化的操作和之后的清理动作

void test_readAllTxt();void test_joinPath();
即我们定义的方法如下:
class TestFileHelper : public QObject
{Q_OBJECT
​
public:TestFileHelper();~TestFileHelper();
​
private slots:void initTestCase();void cleanupTestCase();void test_readAllTxt();  // 1个测试用例void test_joinPath();
};

接着我们来实现测试用例的逻辑:

//测试用例会检查FileHelper::readAllTxt(":/testfile.txt") 的返回值是否等于 "abc"
void TestFileHelper::test_readAllTxt()
{QCOMPARE(FileHelper::readAllTxt(":/testfile.txt"), "abc");
}
​
//检查 FileHelper::joinPath("C:\\a\\b", "c") 是否能够正确地将路径拼接成 "C:/a/b/c"
void TestFileHelper::test_joinPath()
{QCOMPARE(FileHelper::joinPath("C:\\a\\b", "c"), "C:/a/b/c");
}

关于上面的代码使用了 QCOMPARE宏;它是 Qt 测试框架提供的宏,功能是比较两个对象

的值,如果它们不相等,测试会失败。

在其中我们还要引入 FileHelper 类的头文件,即被测的类的头文件。

pro文件中引入qosbrowser

接着在其pro文件中写入以下信息:

从而 将 qosbrowser 目录添加到头文件的搜索路径中,以便能够包含所需的头文件。

INCLUDEPATH += $$PWD/../../qosbrowser

引入测试对象的cpp和头文件

然后我们需要将FileHelper 类的cpp和头文件都复制进来:

引入资源文件

因为我们被测类的方法需要引入资源文件testfile.txt,(其中输入abc),故我们需要将其引入。

运行

在下面控制台有一个测试结果界面,我们可以点击其中的三角按钮运行所有的测试用例,可以看到,我两个测试用例中:

void test_readAllTxt();测试通过

void test_joinPath();测试不通过

当然也可以右键函数单独测试某个测试用例。

从这里我们也能够去很清楚的了解到测试的流程;

总结

  1. 初始化阶段 (initTestCase)

    • 在运行任何测试用例之前,initTestCase() 会被调用,通常用来做一些准备工作,比如文件的创建、连接到数据库等操作。

  2. 执行测试用例

    • test_readAllTxt()test_joinPath() 会执行具体的功能测试,通过 QCOMPARE 来验证实际返回值与预期值是否一致。

  3. 清理阶段 (cleanupTestCase)

    • 测试用例执行完后,cleanupTestCase() 会被调用,清理测试过程中可能创建的资源,确保下一个测试用例不会受上一个测试用例的影响。

http://www.dtcms.com/wzjs/4482.html

相关文章:

  • 发改委网站建设方案百度推广运营公司
  • 品牌设计全案长沙seo 优化选智投未来no1
  • 编程猫加盟条件和费用新网站怎么做优化
  • 制作公司网站视频上海专业的seo推广咨询电话
  • element ui设计网站网址域名大全
  • 网站建设论文文献计算机培训机构排名
  • 自己做服务器网站郑州百度推广公司
  • 做3d图的网站有哪些软件兰州网站seo优化
  • 临汾哪做网站免费的自助建站
  • 罗湖网站建设多少钱广告联盟平台
  • 自己做网站软件360站长工具
  • 网站做留言板怎么清空源码如何进行网络推广
  • 有没有网站专门做cnc招聘福建搜索引擎优化
  • 顺企网赣州网站建设seo外链发布工具
  • 气血不足做网站网络广告的形式
  • 单页网站修改广东清远今天疫情实时动态防控
  • 2345网址导航中国最好的网址站自己的网站怎么推广
  • 怎么做婚恋网站搜索引擎优化的概念
  • 做网站佛山谷歌chrome手机版
  • 阿里建站系统头条收录提交入口
  • 成都网站建设报价免费的网站域名查询565wcc
  • 阳江网站网站建设友情链接百科
  • 手机门户网站建设seo工程师是做什么的
  • 怎么建设宣传网站专业搜索引擎seo技术公司
  • 想学学做网站杭州seo哪家好
  • 网站建设费用申请查询关键词排名工具
  • 网站开发汇报ppt模板怎么建立公司网站
  • 盐城做网站需要多少钱手机百度下载免费
  • 做交易网站中国品牌策划公司排名
  • b站推广网站2023年网络营销的方式有十种