我想对使用Qt在c ++中完成的一些简单练习进行单元测试。我认为使用QtTest似乎是一个合理的起点。
我有一个返回整数的类,我想测试预期结果与实际结果相同。
我正确地认为我在项目中创建了一个新的c ++源文件,用作QtTest 继续我所拥有的,但是从阅读Qt文档我无法解决我必须做的事情? #include "Conversion.h"
#include <QtTest/QtTest>
class ConversionTest : public QObject
{
private slots:
void testConvert();
};
void ConversionTest::testConvert()
{
int unit1 = 1, unit2 = 10;
std::string sUnit1 = "stone", sUnit2 = "pound";
double expected = 10.8862;
double actual;
Conversion c;
actual = c.convert(unit1, unit2, sUnit1, sUnit2);
QCOMPARE(expected, actual);
}
QTEST_MAIN (ConversionTest)
#include "conversiontest.moc"
这是我在阅读文档后制作的内容,但现在我如何运行它并得到(我认为)控制台输出,表示通过/失败?
任何帮助都会非常感谢
答案 0 :(得分:1)
您需要使用它创建一个应用(QTEST_MAIN(..)
为您构建main
函数),并在CONFIG += qtestlib
文件中指定.pro
。
当您运行它时,会打开一个控制台,打印出测试结果。
答案 1 :(得分:0)
我自己解决了这个问题只是Qt错误代码根本没有问题,由于某种原因它不喜欢我的项目文件在我的项目文件之前的多个文件夹的文件夹结构中,使用完全相同代码在一个新的目录,它的工作? :S