MOOC(7)- case依赖、读取json配置文件进行多个接口请求-发送测试报告邮件(19)
给多个人发邮件时,可以传入邮箱列表
把多个收件人用分号隔开
# -*- coding: utf-8 -*-# @Time : 2020/2/15 17:02# @File : send_mail_19.py# @Author: Hero Liuimport smtplibimport timefrom email.mime.multipart import MIMEMultipartfrom email.mime.text import MIMETextfrom email.mime.application import MIMEApplication # 邮件发送的用户名和密码 常识:第三方授权码_user = "1399630688@qq.com"_pwd = "ycsrylfcyrxhhaeh" # 这是授权码 now = time.strftime("%Y-%m-%d_%H_%M_%S") # 获取时间戳 class SendEmail: def send_email(self, email_to, filepath): # email_to收件人 # filepath 准备发送的附件的地址 # Multipart分多个部分 msg = MIMEMultipart() msg["Subject"] = now + "lhui的测试报告" msg["From"] = _user # msg["To"] = email_to # 表示如果有多个收件人时,用分号分隔,用分号的原因是实际手动发邮件选择多个收件人时,也是分号分隔的 msg["To"] = ";".join(email_to) # 这是正文部分 part = MIMEText("这是自动化测试报告结果,请查收!") msg.attach(part) # 这是附件部分,上传一个附件 # 这里必须是上传的文件,不可以是文件夹,需是完整的路径 part = MIMEApplication(open(filepath, "rb").read()) part.add_header("Content-Disposition", "attachment", filename=filepath) msg.attach(part) s = smtplib.SMTP_SSL("smtp.qq.com", timeout=30) # 连接smtp邮件服务器,端口默认是25 s.login(_user, _pwd) # 登录服务器 s.sendmail(_user, email_to, msg.as_string()) # 发送邮件 # 上传多个附件的方法:把多个文件放在列表里,或者是获取文件夹下的文件列表 # path = ["1", "2", "3"] # 假设这是文件列表 # for item in path: # part = MIMEApplication(open(item, "rb").read()) # part.add_header("Content-Disposition", "attachment", filename=item) # msg.attach(part) # s = smtplib.SMTP_SSL("smtp.qq.com", timeout=30) # 连接smtp邮件服务器,端口默认是25 # s.login(_user, _pwd) # 登录服务器 # s.sendmail(_user, email_to, msg.as_string()) # 发送邮件 if __name__ == "__main__": email_to = ["lhclouds@163.com", "echat1@163.com"] SendEmail().send_email(email_to, r"H:\python_lemon\day_20200208_mooc\data\result.html")
MOOC(7)- case依赖、读取json配置文件进行多个接口请求-发送测试报告邮件(19)的更多相关文章
- MOOC(7)- case依赖、读取json配置文件进行多个接口请求-解决用例间依赖问题(17)
最最重要,处理case依赖.字段依赖 # -*- coding: utf-8 -*- # @Time : 2020/2/13 21:14 # @File : data_depend_17.py # @ ...
- MOOC(7)- case依赖、读取json配置文件进行多个接口请求-读取json封装成类(13)
把读取json数据的函数封装成类 # -*- coding: utf-8 -*- # @Time : 2020/2/12 16:44 # @File : do_json_13.py # @Author ...
- MOOC(7)- case依赖、读取json配置文件进行多个接口请求-openpyxl读取excel(14)
从excel中读取数据 # -*- coding: utf-8 -*- # @Time : 2020/2/12 17:23 # @File : do_excel_openpyxl_14.py # @A ...
- MOOC(7)- case依赖、读取json配置文件进行多个接口请求-执行测试用例(16)
执行测试用例 # -*- coding: utf-8 -*- # @Time : 2020/2/12 22:56 # @File : run_test_16.py # @Author: Hero Li ...
- MOOC(7)- case依赖、读取json配置文件进行多个接口请求-完整的测试类,含依赖测试(15)
ddt.依赖测试.断言.测试数据写回 # -*- coding: utf-8 -*- # @Time : 2020/2/12 23:07 # @File : test_class_15.py # @A ...
- MOOC(7)- case依赖、读取json配置文件进行多个接口请求-模拟接口响应数据(18)
这里是把传入的请求数据作为响应值返回 # -*- coding: utf-8 -*- # @Time : 2020/2/15 9:47 # @File : do_mock_18.py # @Autho ...
- MOOC(7)- case依赖、读取json配置文件进行多个接口请求-xlrd操作excel(11)
xlrd操作excel # -*- coding: utf-8 -*- # @Time : 2020/2/12 9:14 # @File : do_excel_xlrd_11.py # @Author ...
- MOOC(7)- case依赖、读取json配置文件进行多个接口请求-测试类中调用封装的mock(10)
封装mock后,在单元测试中调用 # -*- coding: utf-8 -*- # @Time : 2020/2/11 8:35 # @File : test_class_10.py.py # @A ...
- MOOC(7)- case依赖、读取json配置文件进行多个接口请求-封装mock(9)
封装mock # -*- coding: utf-8 -*- # @Time : 2020/2/12 8:51 # @File : mock_demo_9.py # @Author: Hero Liu ...
随机推荐
- git push报错! [rejected] master -> master (non-fast-forward) error: failed to push some refs to 'https://gitee.com/XXX.git
git pull origin master --allow-unrelated-histories //把远程仓库和本地同步,消除差异 git add . git commit -m"X ...
- 当初对"软件工程"这个专业的期待和想象是什么?
很多期待,很多幻想 印象很深刻的初中语文老师让我们背诵的一首诗<错误>: <错误> 作 者:郑愁予 我打江南走过 那等在季节里的容颜如莲花的开落 东风不来,三月的柳絮不飞 你底 ...
- 《Docekr入门学习篇》——Docker常用命令
Docker常用命令 Docker镜像管理 搜索镜像:docker search 获取镜像:docker pull 查看镜像:docker images 删除镜像:docker rmi 构建镜像:do ...
- 黑马oracle_day02:04.oracle对象&&05.oracle编程(a)
01.oracle体系结构 02.oracle的基本操作 03.oracle的查询 04.oracle对象&&05.oracle编程(a) 05.oracle编程(b) 04.orac ...
- Vue专题-组件
vue.js既然是框架,那就不能只是简单的完成数据模板引擎的任务,它还提供了页面布局的功能.本文详细介绍使用vue.js进行页面布局的强大工具,vue.js组件系统. Vue.js组件系统 每一个新技 ...
- java常见的 http 请求库比较
java常见的http请求库有httpclient,RestTemplate,OKhttp,更高层次封装的 feign.retrofit 1.HttpClient HttpClient:代码复杂,还得 ...
- 使用PHANTOMJS对网页截屏
PhantomJS 是一个基于 WebKit 的服务器端 JavaScript API.它全面支持web而不需浏览器支持,其快速,原生支持各种Web标准: DOM 处理, CSS 选择器, JSON, ...
- CF 1095C Powers Of Two
题目连接:http://codeforces.com/problemset/problem/1095/C 题目: C. Powers Of Two time limit per test 4 seco ...
- Python remove()和del语句 区别和辨析 列表删除操作
del语句可以删除列表中下标处的值,表中被删除值后后面的所有值将向前移动一个下标 spam = ['A','B','C','D','E'] del spam[2] spam 打印显示:['A', 'B ...
- PyTorch基础——词向量(Word Vector)技术
一.介绍 内容 将接触现代 NLP 技术的基础:词向量技术. 第一个是构建一个简单的 N-Gram 语言模型,它可以根据 N 个历史词汇预测下一个单词,从而得到每一个单词的向量表示. 第二个将接触到现 ...