新手提问,使用qttest的问题

csdn5211 2010-10-25 10:34:50
我使用qttest框架,写单元测试代码,应该如何加入到已有的qt项目中去?

如果在原来的项目中添加一个qttest代码的文件,该怎样让测试代码生成单独的可执行程序?我自己改了Makefile之后它会自动改回去,难道要每次都改?
...全文
103 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
车太靓 2010-10-26
  • 打赏
  • 举报
回复
点击右键,按提示操作。
车太靓 2010-10-26
  • 打赏
  • 举报
回复
你不是使用qtcreator么?在工程栏点击右键ok了
Applic 2010-10-26
  • 打赏
  • 举报
回复
单元测试是独立的项目单元

你可以在根目录添加一个toplevel.pro,放入
TEMPLATE = subdirs
SUBDIRS = projects \
unittests
DESTDIR = ./bin/ # 可选或在每个.pro里指定
然后projects是你现在的项目目录,unittests是单元测试目录,projects里放有你现在的项目projects.pro,unittests里放有你新加入的单元测试类及unittests.pro
qmake这个toplevel.pro或单独qmake某个目录.pro就可以

下面是个测试类的例子

#include <QtTest/QtTest>
#include <QtDebug>

#include "nautical.h" // 包含你现有项目中要测试的东西,在私有slots里测试和验证

using namespace QTest;

class TestNautical: public QObject
{
Q_OBJECT
private slots:
void toKilometerTest();
};

void TestNautical::toKilometerTest()
{
Nautical nautical (1);
QVERIFY (qAbs (nautical.toKilometer() - 1.852) < 0.0000001);
}

QTEST_MAIN (TestNautical)
#include "testnautical.moc"

16,216

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧