Send a test report by mail
Import smtplib from email.mime.text Import MimeText class the SendEmail: "" " mail Send report " "" Global Send_user Global EMAIL_HOST Global password Send_user = " [email protected] " EMAIL_HOST = " smtp.163.com " password = ' XXXXXX ' DEF send_mail (Self, user_list, Sub, Content): "" " send a message : param user_list: list of recipients :param sub: Theme :param content: content :return: """ user = "[email protected]" + "<" + send_user + ">" message = MIMEText(content, _subtype="plain", _charset="utf-8") message['Subject'] = sub message['From'] = user message['To'] = ";".join(user_list) server = smtplib.SMTP() server.connect(email_host) server.login(send_user, password) server.sendmail(user, user_list, message.as_string()) server.close() def send_main(self, pass_list, fail_list): """ 发送报告 :param pass_list: :param fail_list: :return: """ pass_num = float(len(pass_list)) fail_num = float(len(fail_list)) count_num = pass_num + fail_num pass_result = ".2f %%% " % (pass_num / count_num * 100 ) fail_result = " % .2f %% " % (fail_num / count_num * 100 ) user_list = [ ' [email protected] ' ] Sub = ' interface to automatic test report ' Content = F " the interface test cases with a total run: {count_num}, the number of through: {pass_num}, the number of failures is: {fail_num}, the pass rate: pass_result {} " self.send_mail (user_list, Sub , Content) IF the __name__ == ' __main__ ' : Send = the SendEmail () send.send_main ([1,2,3,4],[6,2])