QtとQtクイックの新機能です。私はQt QuickのQtテストユニットテストフレームワークを検証しており、テストの実行方法を理解できません。 は、ここで私は以下の構造でSUBDIRSプロジェクトを作成して、私が持っているものです。ユニットテストQtクイック
ProjectSolution
ProjectSolution.pro
Project
Project.pro
Sources/main.cpp
Resources/qml.qrc/main.qml
ProjectTest
ProjectTest.pro
Sources/main.cpp
Resources/qml.qrc/main.qml
Resources/qml.qrc/tst_gui.qml
「プロジェクト」テスト対象のアプリケーションであり、私のテストケースは、「ProjectTest /リソース/ qml.qrc/tst_guiです。 qml "となる。
tst_gui.qml:
import QtQuick 2.5
import QtTest 1.0
TestCase {
name: "UI Testcase"
when: windowShown
function test_button_click() {
mouseClick(click_button, Qt.LeftButton, Qt.NoModifier)
}
function test_key_press() {
keyClick(Qt.Key_Left)
keyClick("a")
}
}
私は "プロジェクト/リソース/ qml.qrc/main.qml" 私がシミュレートしたいのid "click_button" とボタンがあります。私はテストプロジェクトを実行すると は、私はメッセージで失敗を取得する:
FAIL! : tst_gui::UI Testcase::test_button_click() Uncaught exception: click_button is not defined
C:\Users\sjayaprakash\Qt Test Projects\Qt Test Validation\QtTestValidation6\QtTestValidation6Test\tst_gui.qml(9) : failure location
私は私が何か間違ったことをやっていると確信しています。誰かが助けてくれますか?
'main.qml'ファイルをインポートする必要はありませんか? 'tst_gui.qml'では' import 'のようになりましたProject/Resources/qml.qrc/main.qml " – Tarod
main.qmlファイルをインポートするには、importステートメントを使用してエイリアスを使用する方法をいくつか試してみました。どちらもうまくいきませんでした。私はすべてのqmlコードを 'main.qml'から' tst_gui.qml'に移動しました。テストケースがclick_buttonを今見つけられるので、今はうまくいきます。 – medasumanth
素晴らしい!私はあなた自身の答えを書いてそれを受け入れるべきだと思います。ハッピーコーディング! – Tarod