You need to sign in to do that
Don't have an account?

plz execute this test code coverage plz
please execute this test class for code coverage.........
global class BatchClass5 implements Database.Batchable<sObject> {
global final string query;
global BatchClass5(String q)
{
query = q;
}
global Database.QueryLocator start(Database.BatchableContext BC){
return Database.getQueryLocator(query);
}
global void execute(Database.BatchableContext BC, List<Account> scope)
{
List<Account> accns = new List<Account>();
List<Contact> lstcon= new List<contact>();
for(Account a : scope)
{
Account a1 = new Account();
contact c = new contact();
c.lastname = a1.name;
c.accountid = a1.id;
lstcon.add(c);
}
insert lstcon;
}
global void finish(Database.BatchableContext BC){
// Get the ID of the AsyncApexJob representing this batch job
// from Database.BatchableContext.
// Query the AsyncApexJob object to retrieve the current job's information.
}
}
testclass
@isTest
private class BatchClass5_Test5
{
static testmethod void m1()
{
Test.startTest();
Account a = new Account(Name='saikumar');
insert a;
contact c = new Contact();
c.LastName =a.Name;
c.AccountId= a.Id;
insert c;
system.assertEquals('saikumar',c.LastName);
BatchClass5 sync = new batchclass5('select id,name from Account');
ID batchprocessid = Database.executeBatch(sync);
Test.stopTest();
}
}
global class BatchClass5 implements Database.Batchable<sObject> {
global final string query;
global BatchClass5(String q)
{
query = q;
}
global Database.QueryLocator start(Database.BatchableContext BC){
return Database.getQueryLocator(query);
}
global void execute(Database.BatchableContext BC, List<Account> scope)
{
List<Account> accns = new List<Account>();
List<Contact> lstcon= new List<contact>();
for(Account a : scope)
{
Account a1 = new Account();
contact c = new contact();
c.lastname = a1.name;
c.accountid = a1.id;
lstcon.add(c);
}
insert lstcon;
}
global void finish(Database.BatchableContext BC){
// Get the ID of the AsyncApexJob representing this batch job
// from Database.BatchableContext.
// Query the AsyncApexJob object to retrieve the current job's information.
}
}
testclass
@isTest
private class BatchClass5_Test5
{
static testmethod void m1()
{
Test.startTest();
Account a = new Account(Name='saikumar');
insert a;
contact c = new Contact();
c.LastName =a.Name;
c.AccountId= a.Id;
insert c;
system.assertEquals('saikumar',c.LastName);
BatchClass5 sync = new batchclass5('select id,name from Account');
ID batchprocessid = Database.executeBatch(sync);
Test.stopTest();
}
}
{
Account a1 = new Account();
contact c = new contact();
c.lastname = a1.name;
c.accountid = a1.id;
lstcon.add(c);
}
Above code doesn't make sense. Here you are creating new instance of Account a1 and c.lastname = a1.name will be blank. Lastname required field so insert lstcon will throw error!