读取html报告内容加入到邮件正文
f=open(reportadd,‘r’)
str=f.read()
f.close()
message = ‘From:’+sender+’\nTo:’+receivers+’\nContent-type:’+‘text/html’+’\nSubject:’+subject+""“Pytest report”""+str
import smtplib
def sendmail(reportadd):
sender =
receivers =
subject =
smtpserver = 'smtp.126.com'
username =
password =
python使用smtplib发送pytest html测试报告用例执行用时间命名pytest生成的html报告将路径传入发送邮件的函数中if __name__=='__main__': date=time.strftime('%y%m%d%H%M%S') reptadd='./report/report'+date+'.html' pytest.main(['-s','test_basic.py','-n=2','--html='+reptadd]) sendmai
自动化发邮件功能也是自动化测试项目中的重要需求之一。在自动化脚本运行完成之后,邮箱就可以收到最新的测试报告结果,把这种主动的且不及时的查看变成被动且及时的查收,就方便多了。
首先我们需要一份漂亮且通俗易懂的测试报告来展示自动化测试成果, HTMLTestRunner 是 python 标准库 unittest 单元测试框架的一个扩展,它生成易于使用的HTML测试报告。
下载地址: http://tungwaiyip.info/software/HTMLTestRunner.html
这个扩展非常简单,只有一个.py文件,选中后直接下载到本地即可。安装方法也很简单,将其复制到python的安装
使用步骤
1、创建smtp对象:server = smtplib.SMTP()
2、连接服务器:server.connect(host=‘服务器地址’,port=端口号)
3、设置debug等级:server.set_debuglevel(1)可以看到收发信息的过程
4、登录验证:server.login(user_name,user_pswd)
5、发送信息:server.sendmail(from_addr=fromaddr,to_addrs=toaddr
以下是一些测试Python使用smtplib模块来实现Email客户端的步骤:
1. 首先,确保您已经安装了Python的smtplib模块,您可以使用以下命令来检查是否已安装:
import smtplib
如果没有报错,则已安装。
2. 然后,您需要创建一个SMTP对象,以便连接到您的邮件服务器。您可以使用以下代码:
smtpObj = smtplib.SMTP('邮件服务器地址', 端口号)
请注意,在上面的代码中,您需要将“邮件服务器地址”和“端口号”替换为您的邮件服务器的实际地址和端口号。
3. 接下来,您需要使用您的邮件服务器的凭据进行身份验证。您可以使用以下代码:
smtpObj.login('您的用户名', '您的密码')
请注意,在上面的代码中,您需要将“您的用户名”和“您的密码”替换为您的邮件服务器的实际用户名和密码。
4. 然后,您可以使用以下代码发送邮件:
smtpObj.sendmail('发件人', '收件人', '邮件内容')
请注意,在上面的代码中,您需要将“发件人”、“收件人”和“邮件内容”替换为您实际的发件人、收件人和邮件内容。
5. 最后,您可以使用以下代码关闭SMTP对象:
smtpObj.quit()
这将断开与您的邮件服务器的连接。
6. 在测试期间,您可以使用邮件服务器提供的Webmail界面来检查是否已成功发送电子邮件。如果您收到了电子邮件,则表示测试已成功。