Python+Selenium 自动化测试获取测试报告内容并发送邮件
这里封装一个send_mail()方法,用于测试完成后读取测试报告内容,并将报告内容通过邮件发送到接收人
SMTP:Simple Mail Transfer Protocol,简单邮件传输协议
# coding: utf-8 import smtplib # 导入smtplib模块
from email.mime.text import MIMEText
from email.header import Header
from .logger import * def send_email(test_report): with open(test_report, 'r', encoding='utf-8') as f:
mail_body = f.read() # 打开测试报告,读取报告内容作为邮件内容
sender = '*********@***.com' # 发出邮箱
receiver = ['******@***.com', '*******@**.com'] # 接收邮箱
mail_server = 'smtp.139.com' # 邮箱服务地址,这里以139邮箱为例
subject = '自动化测试报告' # 邮件标题
username = '#########' # 邮箱登录名
passwd = '########' # 密码
message = MIMEText(mail_body, 'html', 'utf-8') # 设置邮件格式
message['Subject'] = Header(subject, charset='utf-8')
# 邮箱登录
smtp = smtplib.SMTP() # 实例化smtplib.SMTP()类对象
smtp.connect(mail_server) # 连接邮件服务器
smtp.login(username, passwd) # 登录
# 发送邮件
for i in receiver:
smtp.sendmail(sender, i, message.as_string())
Logger().get_log().info( '邮箱:' + i + ',发送邮件成功!\n') # 打印log
smtp.quit()
发送邮件这点,理论上可以直接使用smtp.sendmail(sender, receiver, message.as_string);
实际使用中发现同时发送到多个邮箱时效果不理想,会出现部分邮箱没有发送;
所以这里使用for循环取接收邮箱遍历发送!
用例执行后,调用此方法即可实现邮件发送

# coding: utf-8
# Team : Quality Management Center
# Author:Carson
# Date :2019/6/19 17:26
# Tool :PyCharm from constant.path import *
import HTMLTestRunner
from encapsulation.add_case import *
from encapsulation.send_mail import * # 设置测试报告参数
fp = open(report_path, "wb")
runner = HTMLTestRunner.HTMLTestRunner(stream=fp,
title=u'测试报告标题',
description=u'描述信息:',
tester=u'测试人员')
# run所有用例
runner.run(add_test())
fp.close()
time.sleep(1)
print(u'测试报告生成地址:' + report_path)
time.sleep(5)
send_email(report_path)
Python+Selenium 自动化测试获取测试报告内容并发送邮件的更多相关文章
- Jenkins持续集成项目搭建与实践——基于Python Selenium自动化测试(自由风格)
Jenkins简介 Jenkins是Java编写的非常流行的持续集成(CI)服务,起源于Hudson项目.所以Jenkins和Hudson功能相似. Jenkins支持各种版本的控制工具,如CVS.S ...
- Python+selenium之获取文本值和下拉框选择数据
Python+selenium之获取文本值和下拉框选择数据 一.结合实例进行描述 1. 实例如下所示: #新增标签操作 def func_labels(self): self.driver.find_ ...
- Python+selenium之读取配置文件内容
Python+selenium之读取配置文件内容 Python支持很多配置文件的读写,此例子中介绍一种配置文件的读取数据,叫ini文件,python中有一个类ConfigParser支持读ini文件. ...
- Python+Selenium自动化-获取页面信息
Python+Selenium自动化-获取页面信息 1.获取页面title title:获取当前页面的标题显示的字段 from selenium import webdriver import t ...
- Python+selenium自动化测试中Windows窗口跳转方法
Python+selenium自动化测试中Windows窗口跳转方法 #第一种方法 #获得当前窗口 nowhandle=driver.current_window_handle #打开弹窗 drive ...
- python+selenium 自动化测试实战
一.前言: 之前的文章说过, 要写一篇自动化实战的文章, 这段时间比较忙再加回家过11一直没有更新博客,今天整理一下实战项目的代码共大家学习.(注:项目是针对我们公司内部系统的测试,只能内部网络访问, ...
- python + selenium + PhantomJS 获取腾讯应用宝APP评论
PhantomJS PhantomJS 是一个基于WebKit的服务器端JavaScript API,它无需浏览器的支持即可实现对Web的支持,且原生支持各种Web标准,如DOM 处理.JavaScr ...
- python selenium 自动化测试web
如何使用python完成自动化测试web页面呢?首选selenium 那基于python的selenium如何使用,下面看一段测试案例: 基于python的selenium 安装方法: pip i ...
- 《一头扎进》系列之Python+Selenium自动化测试框架实战篇6 - 价值好几K的框架,呦!这个框架还真牛叉哦!!!
1. 简介 本文开始介绍如何通过unittest来管理和执行测试用例,这一篇主要是介绍unittest下addTest()方法来加载测试用例到测试套件中去.用addTest()方法来加载我们测试用例到 ...
随机推荐
- I.MX6 ifconfig: SIOCSIFHWADDR: Cannot assign requested address
/************************************************************************** * I.MX6 ifconfig: SIOCSI ...
- 【JSOI 2008】 最大数
[题目链接] 点击打开链接 [算法] 很明显,我们可以用线段树解决此题 只需维护区间最值就可以了 [代码] #include<bits/stdc++.h> using namespace ...
- 【转】Echarts的使用以及动态加载数据
一.Echarts的介绍 ECharts开源来自百度商业前端数据可视化团队,基于html5 Canvas,是一个纯Javascript图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表.创新 ...
- shell 与 空格
shell脚本中,不能随意添加空格,否则出错: 1,=等号两边必须无空格.否则出错.如i =$1和i= $1都是错的.但是在()内部不限制如for ((i= 1;i < 3;i= i+1))是正 ...
- 【转】python字符串/元组/列表/字典互转
#-*-coding:utf-8-*- #1.字典 dict = {'name': 'Zara', 'age': 7, 'class': 'First'} #字典转为字符串,返回:<type ' ...
- package-lock.json到底是干嘛的?(转载)
package-lock.json到底是干嘛的? https://mp.weixin.qq.com/s/NaVVljKrQAFmHMdbkaYmPg## nvm-windows https://git ...
- bzoj 3894 文理分科【最小割+dinic】
谁说这道和2127是双倍经验的来着完全不一样啊? 数组开小会TLE!数组开小会TLE!数组开小会TLE! 首先sum统计所有收益 对于当前点\( (i,j) \)考虑,设\( x=(i-1)*m+j ...
- Web Scraping with R: How to Fill Missing Value (爬虫:如何处理缺失值)
网络上有大量的信息与数据.我们可以利用爬虫技术来获取这些巨大的数据资源. 这次用 IMDb 网站的2018年100部最欢迎的电影 来练练手,顺便总结一下 R 爬虫的方法. >> Prepa ...
- 乐搏讲自动化测试-Python适用公司类型(6)
相信小伙伴们都知道,随着软件测试行业的发展和进步自动化测试已经成为必然.在竞争日益激烈的市场环境中也是你升职加薪的利器. 所以,小编决定从今天起!将要系统.连续.高质量的持续更新「整套自动化测试」文章 ...
- _bzoj1013 [JSOI2008]球形空间产生器sphere【高斯消元】
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1013 保存高斯消元模版. ps,这一题的英文名字是ヨスガノソラ的开发商~^_^ #inclu ...