Ranorex通过Python将报告发送到邮箱的方法
作者:Liuxm_0522 时间:2021-08-17 03:57:43
Ranorex测试报告如何发送到邮箱在网上看了下,其实可以通过在Ranorex上或者VS调用编写发送邮箱代码就可以执行发送了,RX主要涉及到的开发语言是C++或者.NET。但是我想用Python调用并发送,涉及到的应用以及范围会比较麻烦。因此,希望有广大猿友能够给点意见指点一二。
首先将Ranorex测试解决方案在Pycharm打开。
然后新建一个文件夹用来放Python发送邮件的CODE。
'''发送给********@163.com'''
from email.mime.application import MIMEApplication
import smtplib
import os
def send_email(new_log):
'''
发送邮箱
:param new_log: 最新的报告
:return:
'''
file = open(new_log, 'rb')
mail_content = file.read()
file.close()
# 发送方用户信息
send_user = '********@qq.com'
send_password = '********'
# 发送和接收
sendUser = '********@qq.com'
receive = '********@163.com'
# 邮件内容
send_subject = 'Ranorex自动化测试报告'
msg = MIMEApplication(mail_content, 'rb')
msg['Subject'] = send_subject
msg.add_header('Content-Disposition', 'attachment', filename=new_log)
try:
# 登录服务器
smt = smtplib.SMTP('smtp.qq.com')
# helo 向服务器标识用户身份
smt.helo('smtp.qq.com')
# 服务器返回确认结果
smt.ehlo('smtp.qq.com')
smt.login(send_user, send_password)
print('正在准备发送邮件。')
smt.sendmail(sendUser, receive, msg.as_string())
smt.quit()
print('邮件发送成功。')
except Exception as e:
print('邮件发送失败:', e)
def new_report(report_dir):
'''
获取最新报告
:param report_dir: 报告文件路径
:return: file ---最新报告文件路径
'''
# 返回指定路径下的文件和文件夹列表。
lists = os.listdir(report_dir)
listLog = []
# print(lists)
for i in lists:
if os.path.splitext(i)[1] == '.rxlog':
# print(len(i))
# print(i)
listLog.append(i)
# print(listLog)
# print(listLog[-1])
fileNewLog = os.path.join(report_dir, listLog[-2])
return fileNewLog
if __name__ == '__main__':
# 报告路径
test_report = r'D:\学习笔记\Ranorex\Text\1105\text02\text02\Reports'
# 获取最新测试报告
newLog = new_report(test_report)
# 发送邮件报告
send_email(newLog)
运行后,邮件发送成功。
在Windows上,Ranorex报告打开后结果显示错误。
自己尝试在Ranorex解决方案中将一份报告复制粘贴到桌面上,打开也是以上图的错误,原因可能需要在Ranorex解决方案中的环境条件,所以即使发送了也没什么用处,只能提醒Ranorex解决方案已经运行结束。
最后还是在Ranorex上编写脚本发送邮箱最方便。
来源:https://blog.csdn.net/qq_39979646/article/details/103933737
标签:Ranorex,Python,邮箱
0
投稿
猜你喜欢
python 线程的五个状态
2021-05-15 10:24:33
黑客谈 MSSQL SA权限入侵的感悟
2008-03-20 10:18:00
JS中如何优雅的使用async await详解
2024-05-02 16:19:23
SQL Server并发处理存在就更新解决方案探讨
2024-01-17 16:54:06
asp.net DropDownList实现二级联动效果
2023-07-23 07:48:41
亲自教你使用 ChatGPT 编写 SQL JOIN 查询示例
2024-01-14 18:54:01
Mysql中limit的用法方法详解与注意事项
2023-11-16 09:20:05
Python批量转换文件编码格式
2021-10-07 05:01:22
在python image 中安装中文字体的实现方法
2021-08-06 06:19:35
如何基于python实现脚本加密
2021-10-07 19:23:05
ExtJS 开发总结
2009-04-28 13:05:00
9行Python3代码实现批量提取PDF文件的指定内容
2023-02-12 03:22:41
数据库查询的分页优化技巧
2009-05-17 10:31:00
MySQL中触发器的基础学习教程
2024-01-15 21:21:11
教你快速掌握 MySQL数据库中触发器的应用
2008-12-03 15:33:00
Python随机生成身份证号码及校验功能
2023-03-20 08:30:47
Mysql的增删改查语句简单实现
2024-01-19 03:03:57
Python图像特效之模糊玻璃效果
2022-09-08 11:38:21
获取星期几的名称
2012-01-29 18:16:31
Python可视化神器pyecharts绘制雷达图
2021-09-30 14:50:48