Apex - debugowanie

Debugowanie jest ważną częścią każdego procesu programowania. W Apex mamy pewne narzędzia, których można użyć do debugowania. Jedną z nich jest metoda system.debug (), która wypisuje wartość i wyjście zmiennej w dziennikach debugowania.

Możemy użyć następujących dwóch narzędzi do debugowania -

  • Konsola programisty
  • Dzienniki debugowania

Debugowanie za pośrednictwem konsoli programisty

Możesz użyć konsoli programisty i wykonać anonimową funkcjonalność do debugowania Apex, jak poniżej -

Example

Rozważ nasz istniejący przykład pobierania rekordów klientów, które zostały utworzone dzisiaj. Chcemy tylko wiedzieć, czy zapytanie zwraca wyniki, czy nie, a jeśli tak, sprawdzimy wartość List.

Wklej poniższy kod w oknie wykonania anonimowego i postępuj zgodnie z krokami, które wykonaliśmy, aby otworzyć okno wykonaj anonimowe.

Step 1 - Otwórz konsolę programisty

Step 2 - Otwórz Wykonaj anonimowe z „Debuguj”, jak pokazano poniżej.

Step 3 - Otwórz okno Wykonaj anonimowe i wklej następujący kod i kliknij Wykonaj.

// Debugging The Apex
List<apex_customer__c> customerList = new List<apex_customer__c>();
customerList = [SELECT Id, Name FROM APEX_Customer__c WHERE CreatedDate =
today];
// Our Query
System.debug('Records on List are '+customerList+' And Records are '+customerList);
// Debug statement to check the value of List and Size

Step 4 - Otwórz dzienniki, jak pokazano poniżej.

Step 5 - Wpisz „UŻYTKOWNIK” w stanie filtra, jak pokazano poniżej.

Step 6 - Otwórz instrukcję USER DEBUG, jak pokazano poniżej.

Debugowanie za pośrednictwem dzienników debugowania

Możesz debugować tę samą klasę również za pomocą dzienników debugowania. Załóżmy, że masz wyzwalacz w obiekcie klienta i należy go debugować dla niektórych wartości zmiennych, a następnie możesz to zrobić za pomocą dzienników debugowania, jak pokazano poniżej -

To jest kod wyzwalający, który aktualizuje pole Opis, jeśli zmodyfikowany klient jest aktywny i chcesz sprawdzić wartości zmiennych i rekordów znajdujących się obecnie w zakresie -

trigger CustomerTrigger on APEX_Customer__c (before update) {
   List<apex_customer__c> customerList = new List<apex_customer__c>();
   for (APEX_Customer__c objCust: Trigger.new) {
      System.debug('objCust current value is'+objCust);
      
      if (objCust.APEX_Active__c == true) {
         objCust.APEX_Customer_Description__c = 'updated';
         System.debug('The record which has satisfied the condition '+objCust);
      }
   }
}

Wykonaj czynności podane poniżej, aby wygenerować dzienniki debugowania.

Step 1- Ustaw dzienniki debugowania dla swojego użytkownika. Przejdź do Setup i wpisz „Debug Log” w oknie ustawień wyszukiwania, a następnie kliknij Link.

Step 2 - Ustaw dzienniki debugowania w następujący sposób.

Step 3- Wprowadź nazwę użytkownika, który wymaga konfiguracji. Wpisz tutaj swoje imię.

Step 4 - Zmodyfikuj rekordy klienta, aby wystąpiło zdarzenie w celu wygenerowania dziennika debugowania.

Step 5- Teraz ponownie przejdź do sekcji dzienników debugowania. Otwórz dzienniki debugowania i kliknij Resetuj.

Step 6 - Kliknij łącze widoku pierwszego dziennika debugowania.

Step 7 - Wyszukaj ciąg „USER”, korzystając z wyszukiwania w przeglądarce, jak pokazano poniżej.

Instrukcja debug pokaże wartość pola, w którym ustawiliśmy punkt.