Debugowanie kodu JavaScript w programie Qt Creator

Wypisywanie na konsoli

Preferowaną metodą debugowania aplikacji AppStudio jest umieszczanie w kodzie QML komunikatów zapisywanych w pliku console.log, ponieważ komunikaty te są wyświetlane w konsoli programu Qt Creator i są takie same na wszystkich platformach. Metoda ta działa bez konieczności instalowania pakietu Qt. Wymagana jest tylko aplikacja AppStudio.

Aby uruchomić aplikację w programie Qt Creator, kliknij opcję Uruchom w menu Narzędzia > Zewnętrzne > AppStudio. Można również nacisnąć kombinację klawiszy Alt+Shift+R na klawiaturze lub kliknąć przycisk Uruchom znajdujący się w lewej dolnej części okna programu Qt Creator.

Tryb debugowania programu Qt Creator

Wersja programu Qt Creator dostępna w pakiecie AppStudio 4.0 zapewnia natychmiastowy dostęp do narzędzi debugowania programu Qt Creator. Aby otworzyć aplikację w trybie debugowania, naciśnij klawisz F5 w programie Qt Creator lub kliknij przycisk Start debugging of startup project (Rozpocznij debugowanie projektu startowego) znajdujący się w lewej dolnej części okna programu Qt Creator.

Więcej informacji na temat korzystania z narzędzi do debugowania w programie Qt Creator można znaleźć w sekcji Interacting with the Debugger (Praca z debuggerem) w dokumentacji środowiska Qt.

Notatka:

Dokumentacja środowiska Qt zawiera informacje na temat debugowania kodu w języku C++, jednak użycie tego języka wymaga licencji pakietu Qt SDK, która nie jest dostarczana z aplikacją AppStudio.

Punkty zatrzymania

Za pomocą punktów zatrzymania programu Qt Creator można przerywać działanie aplikacji po dojściu do określonych wierszy kodu, aby przekazać sterowanie użytkownikowi. Po osiągnięciu punktu zatrzymania można sprawdzić stan aplikacji i kontynuować jej wykonywanie wiersz po wierszu lub w sposób ciągły.

Punkt zatrzymania można wstawić w aplikacji na kilka sposobów:

  • Naciśnięcie klawisza F9 (F8 na komputerach z systemem macOS), gdy wskaźnik tekstowy znajduje się w wierszu, w którym ma zostać wstawiony punkt zatrzymania.
  • Kliknięcie pustego miejsca po lewej stronie numeru wiersza.
  • Dwukrotne kliknięcie w pustej części widoku Breakpoints (Punkty zatrzymania) i wpisanie numeru wiersza w wyświetlonym oknie Add Breakpoints (Dodawanie punktów zatrzymania).
  • Wybranie opcji Add Breakpoints (Dodaj punkt zatrzymania) w widoku Breakpoints (Punkty zatrzymania) i wpisanie numeru wiersza w wyświetlonym oknie Add Breakpoints (Dodawanie punktów zatrzymania).

Aplikacja zostanie zatrzymana w punkcie, w którym skonfigurowano punkt zatrzymania, a debugger w programie Qt Creator udostępni opcje wznowienia normalnego działania aplikacji, jej zatrzymania lub przejścia do innego wiersza kodu.

Aby otworzyć okno Edit Breakpoints (Edycja punktów zatrzymania), kliknij dwukrotnie punkt zatrzymania w widoku Breakpoints (Punkty zatrzymania) lub kliknij prawym przyciskiem myszy punkt zatrzymania w widoku kodu i wybierz opcję Edit Breakpoint (Edytuj punkt zatrzymania). W oknie tym można skonfigurować różne typy punktów zatrzymania, jak również warunki, które muszą być spełnione, aby aplikacja zatrzymała się w punkcie zatrzymania, liczbę pominięć punktu zatrzymania, zanim aplikacja zostanie zatrzymana oraz polecenia przekazywane automatycznie po osiągnięciu punktu zatrzymania.

Aby przenieść punkt zatrzymania, zaznacz go i przeciągnij w odpowiednie miejsce. Aby usunąć punkt zatrzymania, naciśnij ponownie klawisz F9 (F8 na komputerach z systemem macOS), kliknij ikonę punktu zatrzymania lub kliknij prawym przyciskiem myszy punkt zatrzymania w widoku Breakpoints (Punkty zatrzymania) i wybierz opcję Delete Selected Breakpoints (Usuń wybrane punkty zatrzymania) lub Delete All Breakpoints (Usuń wszystkie punkty zatrzymania).

Więcej informacji na temat punktów zatrzymania zawiera sekcja Setting Breakpoints (Konfigurowanie punktów zatrzymania) w dokumentacji środowiska Qt.

Program profilujący QML

Kod JavaScript może nie tylko powodować występowanie nieoczekiwanych błędów, które uniemożliwiają poprawne działanie aplikacji, ale może być też przyczyną zmniejszenia wydajności aplikacji QML. Wykonywanie zbyt dużej ilości kodu JavaScript w krótkim czasie może na przykład powodować opóźnienia lub pomijanie ramek. Program profilujący QML ułatwia znajdowanie przyczyn spadków wydajności przez monitorowanie danych dotyczących używanych funkcji JavaScript, wykorzystania pamięci i zdarzeń wejściowych.

Aby włączyć program profilujący QML, najpierw upewnij się, że aplikacja nie jest uruchomiona w programie Qt Creator. Następnie w otwartym widoku Project (Projekt) aplikacji wybierz opcję Analyze (Analiza) > QML Profiler. Zostanie otwarta aplikacja, a wraz z nią sekcja QML Profiler w programie Qt Creator. Wykonaj w aplikacji działania, które chcesz przeanalizować, a następnie kliknij opcję Stop (Zatrzymaj) w sekcji QML Profiler. W sekcji QML Profiler dostępny jest element Scene Graph (Wykres sceny) ilustrujący zachowanie aplikacji. W widoku kodu wyświetlane są także wartości procentowe oznaczające czas, w jakim aplikacja wykonywała poszczególne fragmenty kodu.

Więcej informacji na temat programu profilującego QML zawiera sekcja Profiling QML Applications (Profilowanie aplikacji QML) w dokumentacji środowiska Qt.