【发布时间】:2016-06-14 09:06:01
【问题描述】:
所以我正在使用带有"data driven" approach 的Qt 的QTest 框架。我可以像这样定义测试数据:
Q_DECLARE_METATYPE (const int*);
void MyTest::testSomething_data ()
{
QTest::addColumn<const int*> ("rawIntegerData");
// ...
}
现在我尝试用 const char* 而不是 const int* 做同样的事情...
Q_DECLARE_METATYPE (const char*);
void MyTest::testSomething_data ()
{
QTest::addColumn<const char*> ("rawTextData");
// ...
}
...我得到一个失败的静态断言:
const char* is not allowed as a test data format.
原来 QTest::addColumn 明确拒绝 qtestcase.h 中的 const char*。
我意识到QByteArray 可能是一个可行的选择,但我想知道:这里不允许const char * 的原因是什么?
【问题讨论】:
标签: c++ qt unit-testing