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.