function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
Andrew Hoban 6Andrew Hoban 6 

Test Class for Trigger

Hi all,

I have a test class which has passed when i run it, however the code coverage is at 72%.
I have tried to get the test class above 75% however i have had no luck.
Is there something I am missing?

Trigger:
trigger HRcheckedTimeTrigger1 on Match_Day_Check_List__c (before insert, before update) {

if(Trigger.isInsert){
        for(match_day_check_list__c HR: trigger.new){
        
          HR.All_Staff_Covered_Last_Modified__c = DateTime.Now();
          HR.Uniform_Checks_Last_Modified__c = DateTime.Now();
          HR.Diciplinaries_Last_Modified__c = DateTime.Now();
          HR.Casual_Starter_Checks_Last_Modified__c = DateTime.Now();
          HR.Grievances_Last_Modified__c = DateTime.Now();
          
          }
       }
       if(Trigger.isUpdate){
    
     for(match_day_check_list__c HR: trigger.new){
            match_day_check_list__c oldHR = Trigger.oldMap.get(HR.ID);
            
           if(oldHR.All_Staff_Covered__c != HR.All_Staff_Covered__c){
                HR.All_Staff_Covered_Last_Modified__c = DateTime.Now();
            }
            
            if(oldHR.Uniform_Checks__c != HR.Uniform_Checks__c){
                HR.Uniform_Checks_Last_Modified__c = DateTime.Now();
            }
            
             if(oldHR.Diciplinaries__c != HR.Diciplinaries__c){
                HR.Diciplinaries_Last_Modified__c = DateTime.Now();
            }
            
            if(oldHR.Diciplinaries__c != HR.Diciplinaries__c){
                HR.Diciplinaries_Last_Modified__c = DateTime.Now();
            }
            
            if(oldHR.Casual_Starter_Checks__c != HR.Casual_Starter_Checks__c ){
                HR.Casual_Starter_Checks_Last_Modified__c = DateTime.Now();
            }
            
             if(oldHR.Grievances__c != HR.Grievances__c ){
                HR.Grievances_Last_Modified__c = DateTime.Now();
            }


}

}
}

Test Class:
@istest(seealldata=true)
public class checkHRMatchReadyTest{
public static testmethod void HRcheckedTimeTrigger1(){
match_day_check_list__c hr = new match_day_check_list__c ();
hr.Fixture__c = [select id from CS_Fixture__c limit 1].id;
hr.Match_Plan__c = [select id from Pre_Match__c limit 1].id;
insert hr;


hr.All_Staff_Covered__c=true;
hr.All_Staff_Covered__c=false;
hr.Uniform_Checks__c = true;
hr.Uniform_Checks__c = false;
hr.Diciplinaries__c = true;
hr.Diciplinaries__c = false;
hr.Casual_Starter_Checks__c = true;
hr.Casual_Starter_Checks__c = false;
hr.Grievances__c = true;
hr.Grievances__c = false;
hr.HR_Match_Day_Ready__c = true;
hr.HR_Match_Day_Ready__c = false;
hr.HR_Sign_off__c = 'Helen Burns';
update hr;
}
}


Many thanks
Best Answer chosen by Andrew Hoban 6
DeveloperSalesforceDeveloperSalesforce
You are updating all fields with true and false:
hr.All_Staff_Covered__c=true;

11 hr.All_Staff_Covered__c=false;

12 hr.Uniform_Checks__c = true;

13 hr.Uniform_Checks__c = false;

14 hr.Diciplinaries__c = true;

15 hr.Diciplinaries__c = false;

16 hr.Casual_Starter_Checks__c = true;

17 hr.Casual_Starter_Checks__c = false;

18 hr.Grievances__c = true;

19 hr.Grievances__c = false;

20 hr.HR_Match_Day_Ready__c = true;

21 hr.HR_Match_Day_Ready__c = false;



***********************************************************
Solution: First you should insert data and then update.

1st try to insert:  

hr.All_Staff_Covered__c=true; in insert hr;

then:

 hr.All_Staff_Covered__c=false; update hr.

****************************************************************

Mark it as best solution, if it helps.

All Answers

DeveloperSalesforceDeveloperSalesforce
You are updating all fields with true and false:
hr.All_Staff_Covered__c=true;

11 hr.All_Staff_Covered__c=false;

12 hr.Uniform_Checks__c = true;

13 hr.Uniform_Checks__c = false;

14 hr.Diciplinaries__c = true;

15 hr.Diciplinaries__c = false;

16 hr.Casual_Starter_Checks__c = true;

17 hr.Casual_Starter_Checks__c = false;

18 hr.Grievances__c = true;

19 hr.Grievances__c = false;

20 hr.HR_Match_Day_Ready__c = true;

21 hr.HR_Match_Day_Ready__c = false;



***********************************************************
Solution: First you should insert data and then update.

1st try to insert:  

hr.All_Staff_Covered__c=true; in insert hr;

then:

 hr.All_Staff_Covered__c=false; update hr.

****************************************************************

Mark it as best solution, if it helps.
This was selected as the best answer
SonamSonam (Salesforce Developers) 
When you run the test in Developer Console, you would be able to see the lines which are not being tested. Once you know the lines, you csn then create methods to test those as well..