自动化测试教程(18)发送邮件

简介: 它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮件的中转方式。SMTP 认证:简单地说就是要求必须在提供了账户名和密码之后才可以登录 SMTP 服务器,这就使得那些垃圾邮件的散播者无可乘之机。Python对SMTP支持有smtplib和email两个模块,email负责构造邮件,smtplib负责发送邮件。smtplib模块:Python内置对SMTP的支持,可以发送纯文本邮件、HTML邮件以及带附件的邮件。我们这一小结学习了发送邮箱,我们学习之后可以吧生成的测试报告发送到指定的邮箱里面。

文章目录

1.任务目标

我们上节课学习了生成测试报告,那么我们这节课学习一下把测试报告发送163邮箱里面,和QQ邮箱都可以收到。

2.发送邮件

SMTP:即简单邮件传输协议。它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮件的中转方式。SMTP 协议属于TCP/IP协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地。SMTP 服务器就是遵循 SMTP 协议的发送邮件服务器。

SMTP 认证:简单地说就是要求必须在提供了账户名和密码之后才可以登录 SMTP 服务器,这就使得那些垃圾邮件的散播者无可乘之机。增加 SMTP 认证的目的是为了使用户避免受到垃圾邮件的侵扰。

smtplib模块:Python内置对SMTP的支持,可以发送纯文本邮件、HTML邮件以及带附件的邮件。

Python对SMTP支持有smtplib和email两个模块,email负责构造邮件,smtplib负责发送邮件。

3.任务实操

import smtplib#发送邮件模块
from email.mime.text import MIMEText #定义邮件内容
from email.header import Header#定义邮件标题
# 这里所有的参数使用的是163邮箱,如果使用别的邮箱需要自己配置参数
#发送邮箱服务器
smtpserver='smtp.163.com'
#发送邮箱用户名密码
user='XXXXX@163.com'   #填入自己的邮箱账号
#密码为授权码
password='…'#填入自己的授权码,注意非邮件密码
#发送和接收邮箱
sender='XXXXXA@163.com'#填入发送邮箱的账号
receive='XXXXXB@126.com'#填入接收邮箱的账号
#发送邮件主题和内容
subject='Selenium 自动化测试报告'
content='<html><h1 style="color:red">测试报告</h1></html>'
#HTML邮件正文
msg=MIMEText(content,'html','utf-8')
msg['Subject']=Header(subject,'utf-8')
msg['From']='XXXXXA@163.com'    #填入发送邮箱的账号
msg['To'] = 'XXXXXB@126.com'  #填入接收邮箱的账号
#SSL协议端口号要使用465
smtp = smtplib.SMTP_SSL(smtpserver, 465)
#HELO 向服务器标识用户身份
smtp.helo(smtpserver)
#服务器返回结果确认
smtp.ehlo(smtpserver)
#登录邮箱服务器用户名和密码
smtp.login(user,password)
print("开始发送邮件...")
smtp.sendmail(sender,receive,msg.as_string())
smtp.quit()
print("邮件发送完成!")

4.执行结果

3.1运行结果

3.2发送接收到的结果

5.小结

我们这一小结学习了发送邮箱,我们学习之后可以吧生成的测试报告发送到指定的邮箱里面。便于传输和发送。

相关文章
|
1月前
|
人工智能 数据可视化 测试技术
Postman 性能测试教程:快速上手 API 压测
本文介绍API上线后因高频调用导致服务器告警,通过Postman与Apifox进行压力测试排查性能瓶颈。对比两款工具在批量请求、断言验证、可视化报告等方面的优劣,探讨API性能优化策略及行业未来发展方向。
Postman 性能测试教程:快速上手 API 压测
|
3月前
|
JSON JavaScript 测试技术
用Postman玩转电商API:一键测试+自动化请求教程
Postman 是电商 API 测试的高效工具,涵盖基础配置、自动化测试、环境管理与请求自动化,助你快速提升开发效率。
|
2月前
|
前端开发 Java jenkins
Jmeter压力测试工具全面教程和使用技巧。
JMeter是一个能够模拟高并发请求以检查应用程序各方面性能的工具,包括但不限于前端页面、后端服务及数据库系统。熟练使用JMeter不仅能够帮助发现性能瓶颈,还能在软件开发早期就预测系统在面对真实用户压力时的表现,确保软件质量和用户体验。在上述介绍的基础上,建议读者结合官方文档和社区最佳实践,持续深入学习和应用。
596 10
|
1月前
|
监控 测试技术 API
n8n自动化测试教程 (1):环境搭建与初识n8n
n8n是一款开源、可视化的工作流自动化工具,测试工程师可通过拖拽节点快速构建API测试流程,实现测试编排、数据管理、自动化监控与告警等功能,提升测试效率与覆盖率。
|
1月前
|
安全 Shell 持续交付
Debian Apache 自动化部署教程:4 种方法,从个人到企业批量装机
本文介绍在 Debian 系统中实现 Apache 自动化部署的 4 种实用方法,涵盖个人单机与企业批量部署场景。内容包括使用 Bash 脚本一键安装、通过 PXE 实现网络批量部署、借助 Ansible/Puppet 进行多机统一配置管理,以及利用 Preseed 文件自动完成安装配置。文章还提供操作示例与避坑建议,帮助用户提升部署效率,降低人为错误。
80 0
|
2月前
|
JSON 安全 测试技术
什么是API接口测试?这可能是全网最全的教程了!
API 是应用程序间的“中间人”,用于实现通信和数据交换。随着微服务架构的普及,API 数量激增,其质量对系统稳定性至关重要。API 测试可验证功能、性能与安全性,帮助开发者在部署前发现并修复问题,提升系统可靠性。测试内容包括请求方法、URL、请求头、请求体、响应状态码与响应数据等。常用工具如 Postman、AREX 可辅助测试,确保 API 在不同场景下的正确性与稳定性。
|
11月前
|
关系型数据库 MySQL Java
【Docker最新版教程】一文带你快速入门Docker常见用法,实现容器编排和自动化部署上线项目
Docker快速入门到项目部署,MySQL部署+Nginx部署+docker自定义镜像+docker网络+DockerCompose项目实战一文搞定!
1884 10
|
自然语言处理 机器人 Python
ChatGPT使用学习:ChatPaper安装到测试详细教程(一文包会)
ChatPaper是一个基于文本生成技术的智能研究论文工具,能够根据用户输入进行智能回复和互动。它支持快速下载、阅读论文,并通过分析论文的关键信息帮助用户判断是否需要深入了解。用户可以通过命令行或网页界面操作,进行论文搜索、下载、总结等。
299 1
ChatGPT使用学习:ChatPaper安装到测试详细教程(一文包会)
|
11月前
|
缓存 测试技术 Apache
告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
298 1
|
缓存 测试技术 Apache
告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
【10月更文挑战第1天】告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
307 4

热门文章

最新文章