You need to sign in to do that
Don't have an account?
Arnas Baronas
How to write apex test class for SingleEmailMessege
Hello Developers,
I'm new at apex development, maybe someone could explain me how write a test for this type of apex class or give me some kind of example ?
public class emailSending {
public string toMail { get; set;}
public string ccMail { get; set;}
public string repMail { get; set;}
public void sendMail(){
Messaging.SingleEmailMessage email = new Messaging.SingleEmailMessage();
string[] to = new string[] {toMail};
string[] cc = new string[] {ccMail};
email.setToAddresses(to);
if(ccMail!=null && ccMail != '')
email.setCcAddresses(cc);
if(repmail!=null && repmail!= '')
email.setInReplyTo(repMail);
email.setSubject('Test Mail');
email.setHtmlBody('Hello, <br/><br/>This is the test mail that you generated. <br/>The Email Id for which this mail was generated by '+toMail+'<br/><br/>Regards<br/> Developer');
try{
Messaging.sendEmail(new Messaging.SingleEmailMessage[] { email });
}catch(exception e){
apexpages.addmessage(new apexpages.message(apexpages.severity.error,e.getMessage()));
}
toMail = '';
ccMail = '';
repMail = '';
}
}
I'm new at apex development, maybe someone could explain me how write a test for this type of apex class or give me some kind of example ?
public class emailSending {
public string toMail { get; set;}
public string ccMail { get; set;}
public string repMail { get; set;}
public void sendMail(){
Messaging.SingleEmailMessage email = new Messaging.SingleEmailMessage();
string[] to = new string[] {toMail};
string[] cc = new string[] {ccMail};
email.setToAddresses(to);
if(ccMail!=null && ccMail != '')
email.setCcAddresses(cc);
if(repmail!=null && repmail!= '')
email.setInReplyTo(repMail);
email.setSubject('Test Mail');
email.setHtmlBody('Hello, <br/><br/>This is the test mail that you generated. <br/>The Email Id for which this mail was generated by '+toMail+'<br/><br/>Regards<br/> Developer');
try{
Messaging.sendEmail(new Messaging.SingleEmailMessage[] { email });
}catch(exception e){
apexpages.addmessage(new apexpages.message(apexpages.severity.error,e.getMessage()));
}
toMail = '';
ccMail = '';
repMail = '';
}
}
You can use Limits.getEmailInvocations and ApexPages.getMessages to verify the results. Like this:
Regards,
Mkr