我正在寻找一个关于如何使用模型测试来测试基于QAbstractItemModel的模型的好教程。我不知道如何解释显示的调试消息。
此外,我在配置模型测试项目以使用我的QtCreator应用程序时遇到了困难。包括..pri/..pro不起作用。我收到一个错误,说“法师目标没有规则.”。在修复了模型测试/Modeltest.pro文件中的路径之后,它开始编译。但我明白这句话
文件c:\ndk_buildrepos\qt-desktop\src\testlib\qtestlog.cpp,第232行中的
断言:"QTest::testLogger“
知道为什么会这样吗?
模型测试文件夹位于我的项目中。我在我的*.pro文件末尾添加了下面一行
include(modeltest/modeltest.pri)modeltest.pri文件包含以下内容
load(qttest_p4)
SOURCES += modeltest/modeltest.cpp modeltest/dynamictreemodel.cpp
HEADERS += modeltest/modeltest.h modeltest/dynamictreemodel.h我用这种方式修改了代码以使用模型测试。
model = new TasksModel(this);
new ModelTest(model, this);
ui->treeView->setModel(model);TasksModel是我实现的QAbstractItemModel模型。ui->treeView是显示数据的小部件。
在将模型测试与我的应用程序集成时,没有其他修改。
Qt版本为4.7。
发布于 2011-09-13 22:36:06
这听起来有点过火--但实际上,这正是ModelChecker开发人员想要做的事情;当您按下其中一个断言时,请在代码中指向它被击中的位置,并阅读与它一起编写的注释。整个事件被高度评论,并描述了什么是打破和可能的原因。如果您通过GUI调试器运行应用程序,例如KDevelop、Qt或Visual中包含的程序,那么这是最容易做到的。
发布于 2012-08-08 20:25:30
之所以会出现此错误,是因为您实际上并没有在适当的ModelTest测试用例中使用QTestLib。如果您查看/ test /auto/ ModelTest (您可能首先获得了模型测试类),您就可以看到如何使用modeltest正确地构造测试用例。
https://stackoverflow.com/questions/7409337
复制相似问题