Qt Creator ManualTests DebuggerLldb: Difference between revisions
Jump to navigation
Jump to search
(Clarify what the comments in simple.pro are for) |
No edit summary |
||
Line 1: | Line 1: | ||
== Test 1 == | |||
Tests using ''tests/manual/debugger/simple/simple.pro'' from Qt Creator's source repository | |||
[[Category:Tools::QtCreator::QualityAssurance]] | [[Category:Tools::QtCreator::QualityAssurance]] | ||
{| class="wikitable" | {| class="wikitable" | ||
|+ | |+ | ||
!Test | !Test | ||
!Result | !Result | ||
Line 77: | Line 79: | ||
|} | |} | ||
== Test 2 == | |||
Tests using ''tests/manual/debugger/gui/gui.pro'' from Qt Creator's source repository | |||
{| class="wikitable" style="background-color: #eeeeee;" | {| class="wikitable" style="background-color: #eeeeee;" | ||
|- | |- | ||
Line 93: | Line 90: | ||
** Be sure to enable core dumps with "ulimit -c unlimited". Note that this is limited to the shell that you called that in, so run it in Terminal and start the application (or Qt Creator and from there the application) from that Terminal (e.g. with "open <path>/Qt\ Creator.app"). | ** Be sure to enable core dumps with "ulimit -c unlimited". Note that this is limited to the shell that you called that in, so run it in Terminal and start the application (or Qt Creator and from there the application) from that Terminal (e.g. with "open <path>/Qt\ Creator.app"). | ||
|} | |} | ||
{| class="wikitable" | |||
|+ | |||
!Test | |||
!Result | |||
!Annotation | |||
|+ | |||
| | |||
#Run the project. | #Run the project. | ||
#Click the button "Crash".<br />It should write a core file to the working directory. Depending on the operating system, you might have to set "'''ulimit –c unlimited'''" and/or disable OS-specific crash-reporting mechanisms. | #Click the button "Crash".<br />It should write a core file to the working directory (on macOS its in "/cores". Depending on the operating system, you might have to set "'''ulimit –c unlimited'''" and/or disable OS-specific crash-reporting mechanisms. | ||
#Attach Creator to the core file.<br />Verify that you see a stack trace, variable values and code markers just as if you had run the application in the debugger from the beginning. | #Attach Creator to the core file.<br />Verify that you see a stack trace, variable values and code markers just as if you had run the application in the debugger from the beginning. | ||
| | | |
Revision as of 11:17, 6 June 2024
Test 1
Tests using tests/manual/debugger/simple/simple.pro from Qt Creator's source repository
Test | Result | Annotation |
---|---|---|
Create new project. Can you build, run and debug it? | automated | |
Set breakpoint, press F5 / Cmd + Y to build and run debugger, verify that program stops at a breakpoint that you set:
|
||
"Step into" a couple of times. Can you step into Qt source code (*.cpp file under QTDIR)?
(Mac: switch on 'Use Debug Versions of Frameworks' in run configuration. You need Qt sources.) |
||
Test debugging helpers/python lldb: Do classes like QImage or std::string show beautiful information instead of the raw structure? | automated | |
Step through some (not all) test* functions and check whether the displayed data looks correct | The code contains comments with the expected displayed data. These are meant for semi-automatic runs and might differ from what you see. Use your own judgement what's correct and what's not. | |
Comment out the return statement inside the following functions one by one. Check whether you'll end up with a proper stack trace & locals display.
|
||
Test a breakpoint in a QThread:
|
||
Switch on temporarily 'Operate by Instruction' (small icon above the stack trace) and check whether you see disassembler output and can step by instruction |
Test | Result | Annotation |
---|---|---|
Check I/O (qDebug, std::cout, std::cerr) | ||
Check "Run in Terminal". Use Terminal for input. | ||
Check nothing bad happens on a simple int main() {} program with no breakpoints set | automated |
Test 2
Tests using tests/manual/debugger/gui/gui.pro from Qt Creator's source repository
|
Test | Result | Annotation |
---|---|---|
|
||
|
||
Test unusual situations: Kill X 'externally' while debugging (both in a 'running' and 'stopped' state), where X is
|
Test | Result | Annotation |
---|---|---|
Run the project without checking "Run as root user" on the run settings page.
|
||
Debug the project without checking "Run as root user" on the run settings page.
|
||
Run the project with checking "Run as root user" on the run settings page.
|
||
Debug the project with checking "Run as root user" on the run settings page.
|
||
Is entering invalid credentials handled correctly? |