【发布时间】:2016-07-17 01:56:30
【问题描述】:
有人可以向我解释如何为如下所示的顶点触发器编写测试类吗?
trigger LeadAssignmentTrigger on Broker__c (before insert,before update)
{
List<Broker__c > leadsToUpdate = new List<Broker__c >();
for (Broker__c broker: Trigger.new)
{
if (broker.Referral_ID__c!= NULL)
{
String str = broker.Referral_ID__c;
Integer ln = str.Length();
String likeStr = '%'+str.subString(ln-10, ln-7)+'%'+str.subString(ln-7, ln-4) +'%'+ str.subString(ln-4);
// Find the sales rep for the current zip code
List<User> zip = [select Id from User
where MobilePhone Like : likeStr];
// if you found one
if (zip.size() > 0)
{
//assign the lead owner to the zip code owner
broker.OwnerId = zip[0].Id;
leadsToUpdate.add(broker);
}
else
{
// Throw Error
broker.addError('Invalid Referrel ID');
}
}
}
}
我是salesforce的新手。任何人都可以帮助我为上述触发器编写顶点类(测试类)。
@isTest
private class LeadAssignmentTriggerTest
{
static testMethod void validateHelloWorld()
{
User userObj = new User( Id = UserInfo.getUserId() );
userObj.MobilePhone = '5555555555';
update userObj
test.startTest();
try
{
Broker__c broker = new Broker__c();
broker.Referral_ID__c = '55555555';
broker.City ='New York';
// Add all required field here
insert broker;
}
Catch(Exception ee)
{
}
test.stopTest();
}
}
AccountBrowseExtensionTesttestAccountBrowseSystem.DmlException:插入失败。第 0 行的第一个异常;第一个错误:FIELD_CUSTOM_VALIDATION_EXCEPTION,城市是强制性的:[] 堆栈跟踪:Class.AccountBrowseExtensionTest.testAccountBrowse:第 20 行,第 1 列 CloseActivityControllerTesttestCloseActivitySystem.DmlException:插入失败。第 0 行的第一个异常;第一个错误:FIELD_CUSTOM_VALIDATION_EXCEPTION,城市是强制性的:[] 堆栈跟踪:Class.CloseActivityControllerTest.testCloseActivity:第 13 行,第 1 列 changeOwnerControllerTesttestchangeOwnerSystem.DmlException:插入失败。第 0 行的第一个异常;第一个错误:FIELD_CUSTOM_VALIDATION_EXCEPTION,城市是强制性的:[] 堆栈跟踪:Class.changeOwnerControllerTest.testchangeOwner:第 20 行,第 1 列 cntactsclassTesttestcntactsSystem.DmlException:插入失败。第 0 行的第一个异常;第一个错误:FIELD_CUSTOM_VALIDATION_EXCEPTION,城市是强制性的:[] 堆栈跟踪:Class.cntactsclassTest.testcntacts:第 13 行,第 1 列 LogACallControllerTesttestLogACallSystem.DmlException:插入失败。第 0 行的第一个异常;第一个错误:FIELD_CUSTOM_VALIDATION_EXCEPTION,城市是强制性的:[] 堆栈跟踪:Class.LogACallControllerTest.testLogACall:第 14 行,第 1 列 RedirectControllerTesttestRedirectSystem.DmlException:插入失败。第 0 行的第一个异常;第一个错误:FIELD_CUSTOM_VALIDATION_EXCEPTION,城市是强制性的:[] 堆栈跟踪:Class.RedirectControllerTest.testRedirect:第 20 行,第 1 列 TestAccountSharetestSystem.DmlException:插入失败。第 0 行的第一个异常;第一个错误:FIELD_CUSTOM_VALIDATION_EXCEPTION,手机号码是预约后必填项。:[] 堆栈跟踪:Class.TestAccountShare.test:第 40 行,第 1 列
【问题讨论】:
标签: salesforce apex