2

大きな Qt (4.8.x) プロジェクトのテストをセットアップしており、Eclipse (JUNO) 内で qt ユニット テストを実行したいと考えています。そのため、C/C++ ユニット テスト サポートをインストールしました。3 つのクラス/ファイルに 3 つのテスト ケースを含むサブ プロジェクトを作成しました。テストアプリケーションを構築できるので、「Qt Tests Runner」を選択してEclipseに新しい「Run Configuration」を追加しました。

これで、Eclipse でテストを開始/実行できるようになりましたが、Eclipse は 1 つのクラスの結果しか表示せず、エラーで停止します。

XML 解析エラー:: "[xX][mM][lL]" に一致する処理命令ターゲットは許可されていません

-xml を指定して Qt テスト バイナリを実行したところ、アプリケーションの出力が 1 つではなく 3 つの完全な xml ドキュメントであることがわかりました。それが問題だと思いますが、どうすればこれを修正できますか?

4

1 に答える 1

0

同じ実行可能ファイルから複数のテスト クラスを実行していますか? 私の知る限り、QTest::qExec()QTest を呼び出すたびに、完全なテストとして扱われます。

彼らが QTest で目指していたのは、代わりにテスト クラスごとに 1 つの実行可能ファイルだったと思います。私はまだこれを回避する方法を見つけていませんが、QTest が必要とすること (テスト クラスごとに 1 つの実行可能ファイル) を実行するか、googletest に切り替えることで問題を解決できます。

于 2013-06-01T13:58:15.217 に答える