salesforce - Apex 测试类 - System.NullPointerException : Attempt to de-reference a null object

标签 salesforce apex-code

测试类如下: 我试图在测试类中设置 RecordType.Name,但它给了我消息“System.NullPointerException:尝试取消引用空对象 class.TestAcctHierWarnDisplay.tstWarningDisplay1:第 45 行,第 3 列外部入口点”。 记录类型存在。 我不确定我错过了什么。 获取异常于 myacct.RecordType.Name = '主帐户';

最佳答案

您应该按 ID 设置记录类型,而不是按名称:

id idRT = [select Id from RecordType where SobjectType = 'Account' and DeveloperName = 'RTDevName].Id; 

Account sAcct = new Account();
sAcct.RecordTypeId = idRT;

另外,请注意,我使用的是开发人员名称,这相当于对象字段上的 API 名称,其想法是实际名称是一个标签,可以出于前端目的进行更改。

仅供引用: 您收到异常的原因是因为此阶段尚未为该帐户分配记录类型,因此 myacct.RecordTypenull,您正尝试取消引用它访问其上的Name字段时。

关于salesforce - Apex 测试类 - System.NullPointerException : Attempt to de-reference a null object,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8796503/

相关文章:

oauth - 我的应用程序(由 salesforce 加载的 iframe)如何确认用户已登录到 salesforce?

ios - Salesforce Native IOS SDK 无法刷新访问 token

javascript - 如何检测 salesforce lightning 应用程序是在移动浏览器还是桌面浏览器上运行?

css - 无法将字体添加到自定义电子邮件模板 salesforce

javascript - 仅获取列表中的 Id

salesforce - 在 <apex :column> 中以 2 行显示列标题

javascript - 从外部应用程序通过 Salesforce 服务器发送电子邮件

salesforce - 在 apex salesforce 中调试可安排的作业

apex-code - 如何在 Apex 中为 Math.random() 设置种子

class - Salesforce - 构造函数名称无效错误