用于更新的Apex触发器的测试类

时间:2017-12-12 07:50:13

标签: salesforce apex test-class apex-trigger

我是Apex Development的新手。我想为我的Apex Trigger写一个TestClass。

我正在和你分享我的代码:

trigger ClosedOpportunityTrigger on Opportunity (before update) {
    for(Opportunity o:Trigger.New) {
        if(o.Probability==100 && o.Invoiced__c == true)
        {            
            Attachment a = new Attachment();
            try {
                a = [Select Id, Name from Attachment where ParentId =:o.Id];
            }
            catch(Exception e) {
                a = null;
            }
            if (a == null)
                o.addError('Add an attachment before you close the Opportunity');
            }
        }
    }

2 个答案:

答案 0 :(得分:2)

有两件事需要做: - 1.在机会'中创建记录宾语。使用代码更新它。 2.创建附件。以下是供您参考的链接https://developer.salesforce.com/forums/?id=906F00000008yzKIAQ

答案 1 :(得分:1)

古德勒克

public static void testmethod(){

opportunity opp = new opportunity()
//change whatever fields u need to make probability 100%
opp.stage = 'Closed Won';
opp.Invoiced__c == true;

try{

insert opp
}
catch(Exception e){

string errormessage = e.getMessage();

}
//now that u know how to do it, do a positive test where you also add an          
//attachment
//as a side note, your catch block will never fire, because you aren't     
//catching any exceptions you are just getting a null string
}