You need to sign in to do that
Don't have an account?
Very Simple Test Class (need help)
Hello all,
I am learning apex, and have written several triggers. I thought I had figured out how to write a good test class, but unfortunately I did not. Can anyone tell me what I'm doing wrong?
My Trigger:
1
2
3
4
5
6
7
8 trigger scUpdate on Service_Call__c(before insert, before update){
gii__SystemPolicy__c gii = [Select Mileage_Rate__c, Travel_Rate_Base__c, Travel_Rate__c from gii__SystemPolicy__c limit 1];
for(Service_Call__c sc : trigger.new){
sc.Mileage_Rate__c = gii.Mileage_Rate__c;
sc.Travel_Base__c = gii.Travel_Rate_Base__c;
sc.Travel_Rate__c = gii.Travel_Rate__c;
}
}
My Test Class: (not working)
1
2
3
4
5
6
7 @isTest
private class TestscUpdate {
static testMethod void insertNewCall() {
Service_Call__c call = new Service_Call__c();
insert call;
}
}
The error:
System.DmlException: Insert failed. First exception on row 0; first error: CANNOT_INSERT_UPDATE_ACTIVATE_ENTITY, scUpdate: execution of BeforeInsert caused by: System.QueryException: List has no rows for assignment to SObject Trigger.scUpdate: line 2, column 1: []
You need to insert the fields in the record you are inserting in the test class.
You can insert fields like this:
service_call__c call = new service_call__c(mileage_rate__c = 4.3, name = 'Test');
insert call;
Make sure you assign a value to all required fields.
Still getting the same error. I added all required fields, but still get the same error.
Ok, found my issue, just added (SeeAllData=true) to my class