1

我想测试一些我已经实现的 QAbstractListModels,是使用 Qt 实验室的 ModelTest 还是使用 QTestLib 进行我自己的单元测试更好。也有人能指出我实际上 ModelTest 做了什么以及如何使用它或除此之外的一个很好的教程

4

2 回答 2

2

两者都做。ModelTest 只会检查您的模型是否满足 ModelView 框架的基本期望。您仍然需要编写自己的单元测试用例来验证您的模型是否以您期望的方式运行。

有许多模型可以通过 ModelTest 测试,但您仍然觉得需要编写自己的模型。显然,您的模型有一些特殊之处,否则您不会费心编写新模型。所以,测试那些东西!

于 2012-06-21T01:03:52.953 回答
1

ModelTest 只是监听模型发出的信号。在每个信号之后,它会尽可能多地验证信号所暗示的内容是否在模型中实际发生。

不需要教程,因为它使用起来很简单,就像您链接到的文章一样。

只需为您的模型实例化一个 ModelTest。它甚至可以是模型的孩子,只要模型存在,它就会存在。下面的辅助函数说明它实际上是微不足道的。

void instrument(QAbstractItemModel * model)
{
  new ModelTest(model, model);
}
于 2012-06-20T20:47:46.827 回答