Ranorex通过Python将报告发送到邮箱的方法


Posted in Python onJanuary 12, 2020

Ranorex测试报告如何发送到邮箱在网上看了下,其实可以通过在Ranorex上或者VS调用编写发送邮箱代码就可以执行发送了,RX主要涉及到的开发语言是C++或者.NET。但是我想用Python调用并发送,涉及到的应用以及范围会比较麻烦。因此,希望有广大猿友能够给点意见指点一二。

首先将Ranorex测试解决方案在Pycharm打开。

Ranorex通过Python将报告发送到邮箱的方法

然后新建一个文件夹用来放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通过Python将报告发送到邮箱的方法

Ranorex通过Python将报告发送到邮箱的方法

自己尝试在Ranorex解决方案中将一份报告复制粘贴到桌面上,打开也是以上图的错误,原因可能需要在Ranorex解决方案中的环境条件,所以即使发送了也没什么用处,只能提醒Ranorex解决方案已经运行结束。

最后还是在Ranorex上编写脚本发送邮箱最方便。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 用户登录验证的小例子
Mar 06 Python
python对指定目录下文件进行批量重命名的方法
Apr 18 Python
Python编程中字符串和列表的基本知识讲解
Oct 14 Python
Python中摘要算法MD5,SHA1简介及应用实例代码
Jan 09 Python
python实现K最近邻算法
Jan 29 Python
基于python log取对数详解
Jun 08 Python
PYQT5实现控制台显示功能的方法
Jun 25 Python
python图像处理模块Pillow的学习详解
Oct 09 Python
python实现人机猜拳小游戏
Feb 03 Python
使用keras根据层名称来初始化网络
May 21 Python
浅谈python处理json和redis hash的坑
Jul 16 Python
python 常见的排序算法实现汇总
Aug 21 Python
python opencv实现信用卡的数字识别
Jan 12 #Python
Python 实现递归法解决迷宫问题的示例代码
Jan 12 #Python
Python3.x+迅雷x 自动下载高分电影的实现方法
Jan 12 #Python
tensorflow的计算图总结
Jan 12 #Python
python利用JMeter测试Tornado的多线程
Jan 12 #Python
Django 批量插入数据的实现方法
Jan 12 #Python
python处理RSTP视频流过程解析
Jan 11 #Python
You might like
使用数据库保存session的方法
2006/10/09 PHP
flash用php连接数据库的代码
2011/04/21 PHP
php根据操作系统转换文件名大小写的方法
2014/02/24 PHP
PHP设置进度条的方法
2015/07/08 PHP
PHP网站自动化配置的实现方法(必看)
2017/05/27 PHP
php字符串过滤strip_tags()函数用法实例分析
2019/06/24 PHP
php使用redis的有序集合zset实现延迟队列应用示例
2020/02/20 PHP
jquery刷新页面的实现代码(局部及全页面刷新)
2011/07/11 Javascript
js仿百度有啊通栏展示效果实现代码
2013/05/28 Javascript
JS实现定时页面弹出类似QQ新闻的提示框
2013/11/07 Javascript
Node.js实现兼容IE789的文件上传进度条
2016/09/02 Javascript
angular.js指令中transclude选项及ng-transclude指令详解
2017/05/24 Javascript
vue params、query传参使用详解
2017/09/12 Javascript
jQuery实现获取table中鼠标click点击位置行号与列号的方法
2017/10/09 jQuery
bootstrap时间插件daterangepicker使用详解
2017/10/19 Javascript
详解使用PM2管理nodejs进程
2017/10/24 NodeJs
JavaScript中常见内置函数用法示例
2018/05/14 Javascript
基于layui数据表格以及传数据的方式
2018/08/19 Javascript
详解Vue项目中实现锚点定位
2019/04/24 Javascript
layui实现鼠标移动到单元格上显示数据的方法
2019/09/11 Javascript
python启动办公软件进程(word、excel、ppt、以及wps的et、wps、wpp)
2009/04/09 Python
使用Python将字符串转换为格式化的日期时间字符串
2019/09/01 Python
Python3 把一个列表按指定数目分成多个列表的方式
2019/12/25 Python
简单了解python调用其他脚本方法实例
2020/03/26 Python
印尼披萨外送专家:Domino’s Pizza印尼
2017/12/28 全球购物
Linux如何为某个操作添加别名
2013/03/01 面试题
教育学专业毕业生的自我鉴定
2013/11/26 职场文书
军训的自我鉴定
2013/12/10 职场文书
数控技术专科生自我评价
2014/01/08 职场文书
大学班级计划书
2014/04/29 职场文书
项目建议书模板
2014/05/12 职场文书
护士实习自荐信
2015/03/06 职场文书
行为规范主题班会
2015/08/13 职场文书
python 通过使用Yolact训练数据集
2021/04/06 Python
解析mybatis-plus中的resultMap简单使用
2021/11/23 Java/Android
Elasticsearch 基本查询和组合查询
2022/04/19 Python