Apex - 调试

调试是任何编程开发中的重要组成部分。 在Apex中,我们有一些可用于调试的工具。 其中之一是 system.debug() 方法,它在调试日志中打印变量的值和输出。

我们可以使用以下两个工具进行调试 −

  • 开发者控制台
  • 调试日志

通过开发者控制台调试

您可以使用开发者控制台并执行匿名功能来调试 Apex,如下所示−

示例

考虑我们现有的获取今天创建的客户记录的示例。 我们只是想知道查询是否返回结果,如果是,那么我们将检查 List 的值。

将下面给出的代码粘贴到执行匿名窗口中,然后按照我们为打开执行匿名窗口所做的步骤操作。

步骤 1 − 打开开发者控制台

步骤 2 − 从"调试"中打开"执行匿名",如下所示。

打开开发者控制台以执行类执行步骤1

步骤 3 − 打开"执行匿名"窗口并粘贴以下代码,然后单击"执行"。

打开开发者控制台以执行类执行步骤2
// 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);
// 调试语句检查List和Size的值

步骤 4 − 打开日志,如下所示。

Apex 调试 Devconsole 步骤 1

步骤 5 − 在过滤条件中输入"USER",如下所示。

步骤 6 − 打开 USER DEBUG 语句,如下所示。

通过调试日志进行调试

您也可以通过调试日志调试同一个类。 假设您在 Customer 对象中有一个触发器,并且需要针对某些变量值对其进行调试,那么您可以通过调试日志来执行此操作,如下所示 −

这是触发代码,如果修改的客户处于活动状态并且您想要检查当前范围内的变量和记录的值,则会更新描述字段 −

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);
      }
   }
}

按照下面给出的步骤生成调试日志。

步骤 1 − 为您的用户设置调试日志。 转到"设置"并在搜索中输入"调试日志"设置窗口,然后单击"链接"。

通过调试控制台第 1 步进行调试

步骤 2 − 设置调试日志如下。

通过调试控制台进行调试 Step2

通过调试控制台进行调试步骤3

步骤 3 − 输入需要设置的用户名。 在此输入您的姓名。

通过调试控制台第 4 步进行调试

步骤 4 − 当事件发生时修改客户记录以生成调试日志。

通过调试控制台进行调试 Step5

步骤 5 − 现在再次转到调试日志部分。 打开调试日志并单击"重置"。

通过调试控制台进行调试步骤6

步骤 6 − 单击第一个调试日志的查看链接。

通过调试控制台 Step7 进行调试

步骤 7 − 使用浏览器搜索来搜索字符串"USER",如下所示。

通过调试控制台 Step8 进行调试

调试语句将显示我们设置点的字段的值。