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

testclass for trigger code
Hai hall I am not getting code coverage please helpme
Trigger code
trigger Assignannualrevenue on Account (before update)
{
if(trigger.isBefore && trigger.isupdate)
{
for(account a:trigger.new){
if(a.industry=='Banking')
a.AnnualRevenue=1000;
else if(a.industry=='Energy')
a.AnnualRevenue=5000;
else
a.AnnualRevenue=50000;
}
}
}
testclass
@istest
public class AssignAnnualrevenue_Test {
@istest
static void testme(){
Account a1=new account(name='lll',industry='banking',Annualrevenue=null);
Account a2=new account(name='kkkk',industry='energy' ,Annualrevenue=null);
Account a3=new account(name='jjj',Annualrevenue=null);
insert a1;
insert a2;
insert a3;
decimal an=1000;
account ac=[select id,name,industry,Annualrevenue from account where id=:a1.id];
ac.AnnualRevenue=an;
system.assertEquals(1000, ac.AnnualRevenue);
update ac;
decimal a=5000;
account ae=[select id,name,industry,Annualrevenue from account where id=:a2.id];
ae.AnnualRevenue=a;
system.assertEquals(5000, ae.AnnualRevenue);
update ae;
decimal aa=50000;
account ad=[select id,name,industry,Annualrevenue from account where id=:a3.id];
ad.AnnualRevenue=aa;
system.assertEquals(50000, ad.AnnualRevenue);
update ad;
//system.assertEquals(1000, ac.AnnualRevenue);
//system.assertEquals(5000, ae.AnnualRevenue);
//system.assertEquals(50000, ad.AnnualRevenue);
}
}
Trigger code
trigger Assignannualrevenue on Account (before update)
{
if(trigger.isBefore && trigger.isupdate)
{
for(account a:trigger.new){
if(a.industry=='Banking')
a.AnnualRevenue=1000;
else if(a.industry=='Energy')
a.AnnualRevenue=5000;
else
a.AnnualRevenue=50000;
}
}
}
testclass
@istest
public class AssignAnnualrevenue_Test {
@istest
static void testme(){
Account a1=new account(name='lll',industry='banking',Annualrevenue=null);
Account a2=new account(name='kkkk',industry='energy' ,Annualrevenue=null);
Account a3=new account(name='jjj',Annualrevenue=null);
insert a1;
insert a2;
insert a3;
decimal an=1000;
account ac=[select id,name,industry,Annualrevenue from account where id=:a1.id];
ac.AnnualRevenue=an;
system.assertEquals(1000, ac.AnnualRevenue);
update ac;
decimal a=5000;
account ae=[select id,name,industry,Annualrevenue from account where id=:a2.id];
ae.AnnualRevenue=a;
system.assertEquals(5000, ae.AnnualRevenue);
update ae;
decimal aa=50000;
account ad=[select id,name,industry,Annualrevenue from account where id=:a3.id];
ad.AnnualRevenue=aa;
system.assertEquals(50000, ad.AnnualRevenue);
update ad;
//system.assertEquals(1000, ac.AnnualRevenue);
//system.assertEquals(5000, ae.AnnualRevenue);
//system.assertEquals(50000, ad.AnnualRevenue);
}
}
You just need to update the Accounts, then Trigger itself will assign AnnualRevenue values based on the Industry.
Please find below modified Test Class which covers 100% code: Let us know if that helps you.
Best Regards,
BALAJI
public class testAssignannualrevenue {
static testmethod void verifytest(){
Account acc = new Account(Name='Test Account',Industry='Apparel',annualrevenue=null);
insert acc;
acc.Industry='Banking';
update acc;
acc.Industry='Energy';
update acc;
acc.Industry='Agriculture';
update acc;
}
}