Qt Creator ManualTests QtQuick: Difference between revisions
Jump to navigation
Jump to search
(Undo revision 34725 by Croitor Alexandru (talk)) |
(Add changed paths since Qt 5.12) |
||
Line 106: | Line 106: | ||
|+ | |+ | ||
| Preparation: | | Preparation: | ||
# Open qtdeclarative/examples/quick/demos/samegame | # Open samegame.qmlproject from Qt5's repository. | ||
#* In Qt < 5.12, it's in qtdeclarative/examples/quick/demos/samegame | |||
#* In Qt >= 5.12, it's in qtdoc/examples/demos/samegame | |||
# Place a breakpoint at the first line of the startNewGame() function (samegame.js) which contains executable code (i.e. not (only) a comment). | # Place a breakpoint at the first line of the startNewGame() function (samegame.js) which contains executable code (i.e. not (only) a comment). | ||
# Start debugging app | # Start debugging app | ||
Line 161: | Line 163: | ||
|+ | |+ | ||
| Breakpoints in bigger project: | | Breakpoints in bigger project: | ||
# Load qtdeclarative/examples/quick/demos/samegame | # Load samegame.pro from Qt5's repository. | ||
#* In Qt < 5.12, it's in qtdeclarative/examples/quick/demos/samegame | |||
#* In Qt >= 5.12, it's in qtdoc/examples/demos/samegame | |||
# Set a breakpoint in GameArea.qml, onClicked handler of MouseArea. Is it hit? Is the right file opened in the editor? Click continue. | # Set a breakpoint in GameArea.qml, onClicked handler of MouseArea. Is it hit? Is the right file opened in the editor? Click continue. | ||
# While the program is running, use the "Locals and Expressions" view to navigate in the object tree. Are the right files opened in the editor? | # While the program is running, use the "Locals and Expressions" view to navigate in the object tree. Are the right files opened in the editor? | ||
Line 228: | Line 232: | ||
* Generate some events by playing around in the running application | * Generate some events by playing around in the running application | ||
* Press "Stop" at the QML Profiler view | * Press "Stop" at the QML Profiler view | ||
Try if this works with a Qt Quick Application as well as with a Qml Project | Try if this works with a Qt Quick Application as well as with a Qml Project. samegame.pro and samegame.qmlproject should be adequate. | ||
* In Qt < 5.12, they are in qtdeclarative/examples/quick/demos/samegame | |||
* In Qt >= 5.12, they are in qtdoc/examples/demos/samegame |
Revision as of 14:13, 21 November 2018
Test | Result | Annotation |
---|---|---|
Open Qml files, make them invalid & again valid, check that errors are underlined | ||
Indent a big Qml file via "Ctrl-I" | automated | |
Hover over elements, properties, expressions | automated | |
Rename an ID via context menu | automated | |
Trigger Find Usages on an id and property | automated |
Test | Result | Annotation |
---|---|---|
Navigate to elements / properties by clicking on the item in the outline | ||
Change qml in text, check that Outline updates | automated: tst_qml_outline | |
Drag&Drop elements around in outline, check that text updates | ||
Check/Uncheck 'Show all Bindings' in the Filter, outline should update accordingly |
Test | Result | Annotation |
---|---|---|
Create new "Qt Quick Application" through wizard, run application | automated | |
Create new "Qt Quick UI" through wizard, run application | automated | |
Generate "Qt Quick 1/2 Extension Plugin", compile | automated |
Test | Result | Annotation |
---|---|---|
Open all files in tests/manual/qml/testfiles_quick2/testfiles_quick2.qmlproject from Qt Creator's repository and check whether:
|
||
Create & Rename & Delete states | ||
Open project tests/manual/qml/testprojects/plugins/plugins.qmlproject from Qt Creator's repository and see whether the Designer treats MyComponent and MyComponent2 correctly.
|
||
Test whether F1 works |
Test | Result | Annotation |
---|---|---|
Preparation:
|
||
Check that the breakpoint is being hit when clicking on "1 Player", and that the breakpoint loses it's 'hour glass' when hit. | ||
Step through startNewGame() function. Check Locals and Expressions update. Also try adding Expression Evaluators, and change content in Locals and Expressions. (Needs Qt >= 5.4) | ||
Add breakpoint while debugging QML. Does the breakpoint interrupt the program? | ||
Add breakpoint before starting QML Debugger. Does the breakpoint interrupt the program? | ||
While interrupted in a javascript method (with more than one line), step over. Does it go to the next line? | ||
While interrupted in a javascript method that calls another javascript method, step into. Does it enter that method's definition? | ||
While interrupted in a javascript method, step out. Does execution resume again (or does debugger go back in context)? |
Test | Result | Annotation |
---|---|---|
Breakpoints:
Are breakpoints being hit? Do they open the right (non-shadow-build) file? |
||
Breakpoints in bigger project:
|
Test | Result | Annotation |
---|---|---|
Can you record some profiling data (see below)? | ||
Do all tabs show well-formed data/information for the shown events? | ||
Can you turn on and off the tabs by using the context menu and do all (re-)shown tabs still show well-formed data according to the last profiling? | ||
With and without an already profiled app disable profiling by hitting the record button and start running again. Does the widget 's content still hold the data of the former profiling (or none if there wasn't any)? | ||
Start the application and test the record button. It should show the collected data when disabled, and collect new data on already running application when enabled. | ||
According to the Timeline tab:
(Note: The little titled subwindows in the timeline are called "tool tip" below, even though they don't behave like normal tooltips.)
|
||
According to the Statistics tab:
|
||
On the Flame Graph tab:
|
Recording Profiling Data
Create or open a project. To record data:
- Enable QML debugging in the Projects mode (might require rebuilding the app)
- Switch to Debug mode, QML Profiler view and press the "Start" button at the QML Profiler view
- Generate some events by playing around in the running application
- Press "Stop" at the QML Profiler view
Try if this works with a Qt Quick Application as well as with a Qml Project. samegame.pro and samegame.qmlproject should be adequate.
- In Qt < 5.12, they are in qtdeclarative/examples/quick/demos/samegame
- In Qt >= 5.12, they are in qtdoc/examples/demos/samegame