본문 바로가기
Salesforce/Trailhead

[Developer Beginner] Apex Testing | Test Apex Triggers

by proudofch 2021. 3. 22.
trigger RestrictContactByName on Contact (before insert, before update) {
	//check contacts prior to insert or update for invalid data
	For (Contact c : Trigger.New) {
		if(c.LastName == 'INVALIDNAME') {	//invalidname is invalid
			c.AddError('The Last Name "'+c.LastName+'" is not allowed for DML');
		}
	}
}

// 위 트리거가 동작하는지 확인하는 테스트 코드

@isTest
public class TestRestrictContactByName {
    // insert, update 시 lastname이 'INVALIDNAME'이면 트리거가 동작
    @isTest static void testInvalidName() {
        Contact cont = new Contact(LastName='INVALIDNAME');
        insert cont;
        Test.startTest();
        Database.SaveResult res = Database.insert(cont, false);
        Test.stopTest();
    }
}

댓글