0
編寫testMethod時,我無法檢索相關聯繫人字段。在下面的例子中,我期望最終的assert返回true。我正在測試的代碼工作正常,select僅在測試上下文中失敗。Salesforce APEX - 測試環境對相關對象返回null
爲什麼從SOQL查詢中不返回聯繫信息?
static testMethod void FailTest()
{
Contact client = new Contact(FirstName='TestFirst1', LastName='TestFirst', BirthDate = Date.parse('01/01/1986'), Gender__c = 'Male');
insert client;
Opportunity opp = new Opportunity(Name = 'Test Opp' + Math.random(), CloseDate=Date.Today(), StageName='ASR - Case Design', Product_Types__c='UL', Face_Amount_Applied_For__c=500, Estimated_Target_Premium__c=1000, X1st_Client__r = client);
insert opp;
Opportunity selectOpp = [Select o.X1st_Client__r.LastName From Opportunity o WHERE o.Id = :opp.Id LIMIT 1];
system.assertNotEquals(opp.X1st_Client__r.LastName, null); //true
system.assertNotEquals(opp.Name, null); //true
system.assertNotEquals(selectOpp.Name, null); //true
system.assertNotEquals(selectOpp.X1st_Client__r.LastName, null); //false, should be true
}
是的,這將做到這一點。我真的很驚訝,它甚至編譯爲。 –