Can you help me to solve the issue and understand it better as I am new to Coding world. I know the issue is because the Apex Class Method's Access modifier **"Private"** causing the trouble, as I am not able to access it from from Test Methods in Test class **Apex Class [Method DateWithin30Days is Private]** public class verifyDate{ public static Date CheckDates(Date date1, Date date2){ if(DateWithin30Days(date1,date2)) return date2; else return SetEndOfMonthDate(date1); } private static Boolean DateWithin30Days(Date date1, Date date2){ //Private Date date30Days = date1.addDays(30); if( date2 > date30Days) return false; else return true; } } **Test Class [Test method - verifyDate.DateWithin30Days(dt1, dt2) throwing error]** > Error Method is not visible: verifyDate.DateWithin30Days(Date, Date) @IsTest public class TestVerifyDate { @IsTest static void checkDatesTest(){ Date Dt1 = Date.today(); Date Dt2 = Date.today()+20; Date Dt = verifyDate.CheckDates(Dt1, Dt2); system.assertEquals(Dt2, Dt); Dt2 = Date.today()+40; Dt = verifyDate.CheckDates(Dt1, Dt2); system.assertEquals(Dt1.addMonths(1).toStartofMonth().addDays(-1),Dt); } @IsTest static void DateWithin30DaysTest(){ Date Dt1 = Date.today()+40; Date Dt2 = Date.today(); Boolean Flip1 = verifyDate.DateWithin30Days(dt1, dt2);//Error system.assertEquals(False, Flip1); Dt1 = Date.today(); Dt2 = Date.today()+90; Boolean Flip2 = verifyDate.DateWithin30Days(dt1, dt2);//Error system.assertEquals(False, Flip2); } } can you help me to understand, how can I access the Private Apex Class method DateWithin30Days from Test Class Method DateWithin30DaysTest(). Please let me know what modification I need to do in Test Class method to achieve this?