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 相关文章推荐
将图片文件嵌入到wxpython代码中的实现方法
Aug 11 Python
python实现清屏的方法
Apr 30 Python
python如何为被装饰的函数保留元数据
Mar 21 Python
Python pandas自定义函数的使用方法示例
Nov 20 Python
python 求定积分和不定积分示例
Nov 20 Python
使用python去除图片白色像素的实例
Dec 12 Python
TensorFlow2.0:张量的合并与分割实例
Jan 19 Python
解决pyecharts运行后产生的html文件用浏览器打开空白
Mar 11 Python
python由已知数组快速生成新数组的方法
Apr 08 Python
python实现按键精灵找色点击功能教程,使用pywin32和Pillow库
Jun 04 Python
Python3读取和写入excel表格数据的示例代码
Jun 09 Python
python中 Flask Web 表单的使用方法
May 20 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
PHP使用两个栈实现队列功能的方法
2018/01/15 PHP
PHP字符串和十六进制如何实现互相转换
2020/07/16 PHP
js无刷新操作table的行和列
2014/03/27 Javascript
JavaScript之Vue.js【入门基础】
2016/12/06 Javascript
JS 验证密码 不能为空,必须含有数字、字母、特殊字符,长度在8-12位
2017/06/21 Javascript
分享19个JavaScript 有用的简写写法
2017/07/07 Javascript
Node.JS使用Sequelize操作MySQL的示例代码
2017/10/09 Javascript
Vue-resource拦截器判断token失效跳转的实例
2017/10/27 Javascript
js时间戳与日期格式之间转换详解
2017/12/11 Javascript
BootStrap中的模态框(modal,弹出层)功能示例代码
2018/11/02 Javascript
基于Node.js的大文件分片上传示例
2019/06/19 Javascript
JavaScript canvas实现跟随鼠标事件
2020/02/10 Javascript
解决VUE mounted 钩子函数执行时 img 未加载导致页面布局的问题
2020/07/27 Javascript
javascript如何使用函数random来实现课堂随机点名方法详解
2020/07/28 Javascript
js实现翻牌小游戏
2020/07/31 Javascript
[56:47]Ti4 循环赛第三日 iG vs Liquid
2014/07/12 DOTA
Python装饰器decorator用法实例
2014/11/10 Python
python通过floor函数舍弃小数位的方法
2015/03/17 Python
python使用pygame框架实现推箱子游戏
2018/11/20 Python
Python-copy()与deepcopy()区别详解
2019/07/12 Python
用Pytorch训练CNN(数据集MNIST,使用GPU的方法)
2019/08/19 Python
python3实现单目标粒子群算法
2019/11/14 Python
用pytorch的nn.Module构造简单全链接层实例
2020/01/14 Python
Python3 元组tuple入门基础
2020/02/09 Python
HTML5 WebGL 实现民航客机飞行监控系统
2019/07/25 HTML / CSS
基于html5 canvas做批改作业的小插件
2020/05/20 HTML / CSS
ParcelABC西班牙:包裹运送和快递服务
2019/12/24 全球购物
公司离职证明范本
2014/01/13 职场文书
竞选团支书演讲稿
2014/04/28 职场文书
小学教师个人先进事迹材料
2014/05/17 职场文书
乡镇党建工作汇报材料
2014/08/14 职场文书
财务管理制度范本
2015/08/04 职场文书
2016庆祝国庆67周年宣传语
2015/11/25 职场文书
微软PC Health Check电脑健康状况检查应用下载(Win11配置检测工具)
2021/06/26 数码科技
JavaGUI模仿QQ聊天功能完整版
2021/07/04 Java/Android
Python 数据可视化之Seaborn详解
2021/11/02 Python