Apex - Depuração
A depuração é uma parte importante em qualquer desenvolvimento de programação. No Apex, temos certas ferramentas que podem ser usadas para depuração. Um deles é o método system.debug () que imprime o valor e a saída da variável nos logs de depuração.
Podemos usar as duas ferramentas a seguir para depuração -
- Console do desenvolvedor
- Registros de depuração
Depuração via console do desenvolvedor
Você pode usar o console do desenvolvedor e executar a funcionalidade anônima para depurar o Apex conforme abaixo -
Example
Considere nosso exemplo existente de buscar os registros do cliente que foram criados hoje. Queremos apenas saber se a consulta está retornando os resultados ou não e se sim, verificaremos o valor de List.
Cole o código fornecido abaixo em executar janela anônima e siga os passos que fizemos para abrir a janela executar anônima.
Step 1 - Abra o console do desenvolvedor
Step 2 - Abra Executar anônimo em 'Depurar', conforme mostrado abaixo.
Step 3 - Abra a janela Executar anônimo, cole o seguinte código e clique em executar.
// 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 - Abra os Logs conforme mostrado abaixo.
Step 5 - Insira 'USUÁRIO' na condição de filtro conforme mostrado abaixo.
Step 6 - Abra a instrução USER DEBUG conforme mostrado abaixo.
Depuração por meio de registros de depuração
Você também pode depurar a mesma classe por meio de logs de depuração. Suponha que você tenha um gatilho no objeto Cliente e precise ser depurado para alguns valores de variáveis, então você pode fazer isso por meio dos logs de depuração, conforme mostrado abaixo -
Este é o Código de Disparo que atualiza o campo Descrição se o cliente modificado estiver ativo e você quiser verificar os valores das variáveis e registros atualmente no escopo -
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);
}
}
}
Siga as etapas fornecidas abaixo para gerar os logs de depuração.
Step 1- Defina os logs de depuração para seu usuário. Vá para Configuração e digite 'Registro de depuração' na janela de configuração de pesquisa e clique em Link.
Step 2 - Defina os logs de depuração conforme a seguir.
Step 3- Insira o nome do usuário que requer configuração. Escreva o seu nome aqui.
Step 4 - Modifique os registros do cliente conforme o evento deve ocorrer para gerar o log de depuração.
Step 5- Agora vá para a seção de logs de depuração novamente. Abra os logs de depuração e clique em Reset.
Step 6 - Clique no link visualizar do primeiro log de depuração.
Step 7 - Pesquise a string 'USER' usando a pesquisa do navegador conforme mostrado abaixo.
A instrução de depuração mostrará o valor do campo no qual definimos o ponto.