2011-09-13 10 views
2

QAbstractItemModelに基づいてモデルをテストするためにmodeltestを使用する方法に関する良いチュートリアルを探しています。表示されるデバッグメッセージの解釈方法はわかりません。QAbstractItemModelモデルテストを使用したテスト

また、QtCreatorで自分のアプリを操作するためのmodeltestプロジェクトの設定に問題があります。 .pri/ .proを含めると機能しません。私は "目標を魔法にすることはできません"と言うエラーを受け取ります。 modeltest/modeltest.proファイル内のパスを修正した後、コンパイルを開始します。しかし、私は、この奇妙な主張に

ASSERTを得る: "QTest :: testLogger" ファイルにC:\ ndk_buildrepos \ QT-デスクトップ\ SRC \ TESTLIB \ qtestlog.cpp、ライン232の

任意のアイデア理由これが起こる?


私のmodeltestフォルダは私のプロジェクトの中にあります。私は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); 
modeltestを使用するように私のコードを修正が含まれています
include(modeltest/modeltest.pri) 

私* .PROファイルの末尾に以下の行を追加しました

TasksModelは私のQAbstractItemModelモデルの実装です。 012-ui-> treeViewは、データを表示するウィジェットです。

私のアプリにmodeltestを統合している間に他の修正はありません。

Qtバージョンは4.7です。

+0

callstackを分析する - qtestlog.cppはあなたのバグがある場所ではなく、単にデバッガに送信される場所です。モデルのヘルプが必要な場合は、ソースからさらに多くのコードを含める必要があります。 – Jens

+0

追加データを追加しました。何か案は ?他に何が役立つでしょうか? –

+0

ok #undefをコメントアウトすることで問題を解決しました。Q_ASSERT #define Q_ASSERT Qtype.cppのQVERIFY行 –

答えて

1

これはやや重すぎるように聞こえますが、実際ModelChecker開発者が意図したものです;)アサーションの1つをヒットすると、ヒットして読み込まれるコードのポイントに移動しますそれと共に書かれたコメント。全体が非常にひどくコメントされており、何が壊れているのか、理由は何かを説明しています。これは、KDevelop、Qt Creator、Visual StudioなどのGUIデバッガを使用してアプリケーションを実行する場合には、はるかに簡単です。

+0

ありがとう。私は私のプロジェクトでmodeltestを使うようにQtCreatorを設定しようとしています。あなたのアイデアがあれば私の質問を修正しました:) –

1

実際にこのQTestLibテストケース内でModelTestを使用していないためです。/tests/auto/modeltest(おそらく最初にmodeltestクラスがあるかもしれない)を見れば、ModelTestを使ってテストケースを正しく構築する方法を知ることができます。

関連する問題