由难到易,这3种自动发送测试报告的神仙方法,建议码住

编程入门 行业动态 更新时间:2024-10-26 07:40:59

由难到易,这3种自动发送测试报告的<a href=https://www.elefans.com/category/jswz/34/1765465.html style=神仙方法,建议码住"/>

由难到易,这3种自动发送测试报告的神仙方法,建议码住

请点击输入图片描述(最多18字)

​前言

每当测试结束后,测试人员都会输出一份详细的测试报告给到领导或者组内人员,那么当我们自动化测试结束后的时候,也可以让其自动发送测试报告。

这样领导和组内的成员就能看到自动化测试每次测试的内容了。安静先介绍下如何通过Python发送邮件,再通过简单的小例子在自动化测试过程中自动发送报告。

smtplib

smtplib是属于Python发送邮件的一个库。其简单的原理是通过SMTP的方式来实现发送报告的。SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。

smtplib中对其SMTP的协议进行了一个封装,其中email是用来支持发送文本、图片和携带附件等功能。

登录邮箱

发送邮件前肯定需要登录邮箱了,这里安静先通过163的邮箱进行介绍,登录是通过smtplib这个库进行来完成的。

这里需要先确认发件人的邮箱是否开通了SMTP邮箱权限,可以登录到163邮箱中,选择SMTP/IMAP中选择开启SMTP服务。勾选后进行连接登录:

import smtplib
# 创建smtplib服务
smtp = smtplib.SMTP()
# 服务器地址
smtpserver = 'smtp.163'
# 发送账号
user = 'XXXXXXXX@163'
# 发送密码
password = 'xxxxxxx'
# 收件人
receivers = '821006052@qq'
# 连接服务器
smtp.connect(smtpserver)
# 登录邮箱账号
smtp.login(user, password)

(左右滑动查看完整代码)

邮件发送类型

邮件发送通过Python中的email的库来实现的,其中email发送邮件可以支持多类型,比如纯文本、纯图片、文本加附件等方法,这里安静会一个个进行介绍。

文本发送

发送邮件肯定包含发送人、收件人、邮件标题、邮件内容等内容,这里email中的Mimetext的方法可以帮助我们实现发送纯文本内容。

import smtplib
from email.mime.text import MIMEText
# 创建smtplib服务
smtp = smtplib.SMTP()
# 服务器地址
smtpserver = 'smtp.163'
# 发送账号
user = 'xxxxxxx@163'
# 发送密码
password = 'xxxxxxx'
# 收件人
receivers = '821006052@qq'
# 邮件标题
subject = '自动化测试报告'
# 发送内容 (文本内容,发送格式,编码格式)
message = MIMEText('这是测试文本内容,自动化测试通过', 'html', 'utf-8')
# 发送地址
message['From'] = user
# 接收地址
message['To'] = receivers
# 邮件标题
message['subject'] =subject
# 连接服务器
smtp.connect(smtpserver)
# 登录邮箱账号
smtp.login(user, password)
# 发送账号信息
smtp.sendmail(user,receivers,message.as_string())
# 关闭
smtp.quit()

(左右滑动查看完整代码)

通过执行后可以发现,QQ邮箱已经成功的收到了邮件信息。

图片发送

正常发送邮件只需要将邮件全部都复制粘贴到邮件中就行了。但是这里我们通过Python进行发送邮箱,需要用到email中的MIMEimage的模块了。

这个模块可以帮助我们将我们需要的图片内容添加到邮件中,需要我们将本地的图片导入到html中,通过html中进行发送,如果你通过链接的形式发送会失败,邮件会识别成恶意链接,从而进行拦截。这里安静这接在上面的代码中进行加入HTML格式,将图片嵌套在html文本中发送:

import smtplib
from email.mime.text import MIMEText
from email.mime.image import MIMEImage
from email.mime.multipart import MIMEMultipart
# 创建smtplib服务
smtp = smtplib.SMTP()
# 服务器地址
smtpserver = 'smtp.163'
# 发送账号
user = 'xxxxxx@163'
# 发送密码
password = 'xxxxxx'
# 收件人
receivers = '821006052@qq'
# 邮件标题
subject = '自动化测试报告中加入图片'
# 发送内容 (文本内容,发送格式,编码格式)
text = '''
<html>
<head>自动化测试报告中带图片</head>
<body>
<p>
<p><img src="cid:anjing"></p>
<p>
</body>
</html>
'''
message = MIMEMultipart()
body = MIMEText(text, 'html', 'utf-8')
f = open('123.jpg','rb')
mag = MIMEImage(f.read())
f.close()
# 定义图片ID在HTML中展示
mag.add_header('Content-ID', 'anjing')
# 添加图片信息
message.attach(mag)
# 添加正文
message.attach(body)
# 发送地址
message['From'] = user
# 接收地址
message['To'] = receivers
# 邮件标题
message['subject'] =subject
# 连接服务器
smtp.connect(smtpserver)
# 登录邮箱账号
smtp.login(user, password)
# 发送账号信息
smtp.sendmail(user,receivers,message.as_string())
# 关闭
smtp.quit()

(左右滑动查看完整代码)

通过执行上面的代码可以看到QQ邮箱,已经接收到了邮件信息,打开邮箱清楚的看到,图片已经在文本中添加了。

附件发送

发送邮件需要带附件的情况下,我们可以使用email库中的MIMEMUltipart模块。

import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
# 创建smtplib服务
smtp = smtplib.SMTP()
# 服务器地址
smtpserver = 'smtp.163'
# 发送账号
user = 'xxxxxx@163'
# 发送密码
password = 'xxxxxx'
# 收件人
receivers = '821006052@qq'
# 邮件标题
subject = '自动化测试报告中附件'
message = MIMEMultipart()
body = MIMEText('自动化测试报告携带附件内容', 'html', 'utf-8')
# 添加正文
message.attach(body)att = MIMEText(open('123.jpg', 'rb').read(), 'base64', 'utf-8')
att["Content-Type"] = 'application/octet-stream'    # 死格式
# filename 表示附件的名称
att["Content-Disposition"] = 'attachment; filename="fujian.jpg"'
# 邮件中添加附件
message.attach(att)
# 发送地址
message['From'] = user
# 接收地址
message['To'] = receivers
# 邮件标题
message['subject'] =subject
# 连接服务器
smtp.connect(smtpserver)
# 登录邮箱账号
smtp.login(user, password)
# 发送账号信息
smtp.sendmail(user,receivers,message.as_string())
# 关闭
smtp.quit()

(左右滑动查看完整代码)

通过执行代码清楚的看到邮件中已经携带了附件内容,并且成功发送了。

zmail邮件

一些测试同学看到上面这么多代码估计脑袋就大,安静在给大家介绍一种简单方便的发送邮件库zmail,这个库的目的就是为了方便发送邮件。

但是要注意zmail这个库目前只支持Python3不支持Python2,想必都2021年了,没人再用Python2了吧。

安装:

pip  install zmail

(左右滑动查看完整代码)

文本发送

继续从文本发送,先创建一个zmail服务,将其发件人邮箱账号以及邮箱授权码(163设置中的SMTP打开)进行连接通过zmail服务连接。编辑文本进行发送:

import zmail
# 发件人
username = 'xxxxxx@163'
# 授权码密码
password = 'xxxxxx'
# 创建zmail服务
server= zmail.server(username,password)
# 邮件主题
body = {
    'subject': "自动化测试报告",  # 邮件标题
    "content_text": '这是邮件的文本内容,自动化测试结果',   # 邮件文本
}
# 收件人
receivers = '821006052@qq'
# 发送邮件
server.send_mail(receivers,body)

(左右滑动查看完整代码)

通过代码就可以看出来很清楚的就讲邮件内容展现出来,执行代码,成功的收到邮件信息。

正在上传…重新上传取消

图片发送

同样文本发送完成后,继续来我们的图片发送。这里可以通过图片的base64的格式加入到html的代码中,然后放入到文本中进行发送。

import zmail
# 发件人
username = 'xxxxx@163'
# 授权码密码
password = 'xxxxxx'
# 创建zmail服务
server= zmail.server(username,password)
html = '''
<p> 这是邮件的文本内容,自动化测试结果 </p>
<img src='data:image/jpg;base64,/9j/4AAQSkZJRgABAgAAAQABAAD//gAQTGF2YzU3LjI0LjEwMgD/2wBDAAgMDA4MDhAQEBAQEBMSExQUFBMTExMUFBQVFRUZGRkVFRUUFBUVGBgZGRscGxoaGRocHB4eHiQkIiIqKiszMz7/xAGiAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgsBAAMBAQEBAQEBAQEAAAAAAAABAgMEBQYHCAkKCxAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/wAARCAH0AfQDARIAAhIAAxIA/9oADAMBAAIRAxEAPwD3aigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACsV9Y0yJ2je/skdTgq1xCrA+hBcEGgAA2qarBgCpDA9CDkUAADqKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAA898VWetX1v5OnPGkRRxOvmBJJckYRSU+UYBz+8XduIbisPxzros7U6fCx8+5X95jPyQHIPOR80mNuOfl3ZxkUAAHzRSUAAGja313YsXtriWAnqY3Zcj0OCM/jWdQAAe1aJ49uYpVj1MiaFuPOWNRJGezFUwrKO4C7u4zjB8VoAAPuu1uoL2CO4t5BLFIMq69COnfBBBBBB5BGK+VvDfim40NxE4M1ozZeP+JM9XiPHPTIPyt7daAAD60pAQwBHfmgAAWigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAACigAAKKAAAooAAPFn8AveXTXN/qck7SHdJshVHJxwFdndVC8ADy8bRgAV7TQAAcTZeEtFsowgtI5zxl7gCV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

更多推荐

由难到易,这3种自动发送测试报告的神仙方法,建议码住

本文发布于:2024-02-12 06:23:45,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1686597.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:神仙   测试报告   自动发送   建议   方法

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!