You need to sign in to do that
Don't have an account?
CBN
How to write test class for batch apex and schedule apex
.....................Batch apex.............................
global class BatchUpdateAccountField implements Database.Batchable <SObject>{
global Database.QueryLocator start (Database.BatchableContext bc)
{
return Database.getQueryLocator('SELECT name from Account');
}
global void execute(Database.BatchableContext bc, List<Account> acList)
{
for(Account ac :acList)
{
ac.name = ac.name + ' Testing';
}
update acList;
}
global void finish(Database.BatchableContext bc)
{
System.debug('>>>Finish');
}
}
...................Schedule apex..............
global class ScheduleBatchAccFieldUpdate implements Schedulable {
global void execute(SchedulableContext sc)
{
BatchUpdateAccountField ba =new BatchUpdateAccountField();
Database.executeBatch(ba);
}
}
global class BatchUpdateAccountField implements Database.Batchable <SObject>{
global Database.QueryLocator start (Database.BatchableContext bc)
{
return Database.getQueryLocator('SELECT name from Account');
}
global void execute(Database.BatchableContext bc, List<Account> acList)
{
for(Account ac :acList)
{
ac.name = ac.name + ' Testing';
}
update acList;
}
global void finish(Database.BatchableContext bc)
{
System.debug('>>>Finish');
}
}
...................Schedule apex..............
global class ScheduleBatchAccFieldUpdate implements Schedulable {
global void execute(SchedulableContext sc)
{
BatchUpdateAccountField ba =new BatchUpdateAccountField();
Database.executeBatch(ba);
}
}
Best Answer chosen by CBN
Raj Vakati
Use this