SendEmail.java的代码
如何将生成的测试报告通过Email发送出去呢?
在util包下创建SendEmail.java代码如下:
package util;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.Properties;
import javax.activation.DataHandler;
import javax.activation.FileDataSource;
import javax.mail.BodyPart;
import javax.mail.Message;
import javax.mail.Multipart;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
import javax.mail.internet.MimeUtility;
/**
* 邮件发送测试报告.
*
* @author betty.shi
*
*/
public class SendEmail {
private static String defaultSenderName = "";// 默认的发件人用户名,defaultEntity用得到
private static String defaultSenderPass = "";// 默认的发件人密码,defaultEntity用得到
private static String defaultSmtpHost = "";// 默认的邮件服务器地址,defaultEntity用得到
private String smtpHost; // 邮件服务器地址
private String sendUserName; // 发件人的用户名
private String sendUserPass; // 发件人密码
private MimeMessage mimeMsg; // 邮件对象
private Session session;
private Properties props;
private Multipart mp;// 附件添加的组件
private List<FileDataSource> files = new LinkedList<FileDataSource>();// 存放附件文件
private void init() {
if (props == null) {
props = System.getProperties();
}
props.put("mail.smtp.host", smtpHost);
props.put("mail.smtp.auth", "true"); // 需要身份验证
session = Session.getDefaultInstance(props, null);
// 置true可以在控制台(console)上看到发送邮件的过程
session.setDebug(true);
// 用session对象来创建并初始化邮件对象
mimeMsg = new MimeMessage