分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 技术分享

Selenium3+生成HTMLTestRunner测试报告+发送带附件邮箱

发布时间:2023-09-06 02:26责任编辑:彭小芳关键词:HTML

1、导入各功能模块

from HTMLTestRunner import HTMLTestRunnerfrom email.mime.text import MIMEText ???#发送邮件正文from email.mime.multipart import MIMEMultipart ??#发送邮件附件from email.header import Headerimport smtplibimport unittestimport timeimport os

2、定义发送邮件(QQ邮箱)

#============定义发送邮件============def send_mail(file_new): ???smtpserver = "smtp.qq.com" ?????#发件服务器 ???port = 465 ?????????????????????#端口 ???sender = "540XXXXXX@qq.com" ????#发送端 ???psw = "jnl**********bef" ???????#密码/授权码 ???receiver = "810XXXXXX@qq.com" ??#接收端 ???#=========编辑邮件内容========= ???f = open(file_new, ‘rb‘) ???mail_body = f.read() ???f.close() ???msg = MIMEMultipart() ???msg["from"] = sender ???#发件人 ???msg["to"] = receiver ???#收件人 ???msg["subject"] = "自动化测试报告" ?#主题 ???#正文 ???body = MIMEText(mail_body, "html", "utf-8") ???msg.attach(body) ???#挂起 ???#附件 ???att = MIMEText(mail_body, "base64", "utf-8") ???att["Content-Type"] = "application/octet-stream" ???att["Content-Disposition"] = ‘attachment; filename="test_report.html"‘ ?#定义附件名称 ???msg.attach(att) ????#挂起 ???#=========发送邮件========= ???smtp = smtplib.SMTP_SSL(smtpserver, port) ???smtp.login(sender, psw) ???smtp.sendmail(sender, receiver, msg.as_string()) ???#发送 ???smtp.quit() #关闭

3、查找测试报告目录,找到最新生成的测试报告文件

#============查找测试报告目录,找到最新生成的测试报告文件============def new_report(testreport): ???lists = os.listdir(testreport) ???lists.sort(key=lambda fn:os.path.getatime(testreport + fn)) ???file_new = os.path.join(testreport, lists[-1]) ???print(file_new) ???return file_new

4、测试运行以上各代码模块

if __name__ == ‘__main__‘: ???test_dir = ‘./test_case/‘ ???#测试用例所在目录 ???test_report = ‘./report/‘ ???#测试报告所在目录 ???discover = unittest.defaultTestLoader.discover(test_dir,pattern=‘test_*.py‘) ???#匹配目录下以"test_"开头的测试用例文件 ???#定义实时测试报告文件,方便查看区分 ???now = time.strftime("%Y-%m-%d %H_%M_%S") ???filename = test_report + now + ‘ result.html‘ ???fp = open(filename, ‘wb‘) ???runner = HTMLTestRunner(stream=fp, ?????????????????????????title=‘测试报告‘, ?????????????????????????description=‘用例执行情况:‘) ???runner.run(discover) ???fp.close() ???new_report = new_report(test_report) ???send_mail(new_report) ??????#发送测试报告

5、测试成功

6、下载打开 test_report.html 测试报告附件

Selenium3+生成HTMLTestRunner测试报告+发送带附件邮箱

原文地址:https://www.cnblogs.com/test-postman/p/10126374.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved