我目前正在使用QTestLib为我的应用程序构建一个单元测试套件。这通常很简单,但我被如何验证“return”参数所困住了。例如,如果我有一个函数:
double pointLineSegmentDistance(const QVector2D& start,
const QVector2D& end,
const QVector2D& point,
bool& withinBounds);该函数将线段距离分析的有界状态指定给withinBounds。怎样才能让QCOMPARE/QVERIFY宏来分析它的状态?
发布于 2012-03-20 21:15:51
只需传递一个局部变量作为参数,然后验证/比较它的值:
bool withinBounds = false;
const double distance = pointLineSegmentDistance( ..., withinBounds );
QCOMPARE(distance + 1.0, 2.0); //qFuzzyCompare doesn't work well with 0.0
QVERIFY(withinBounds);https://stackoverflow.com/questions/9786738
复制相似问题