以邮件的形式发送测试报告

1.创建一个Email 目录(文件夹),在 Email 中创建 bing.py测试用例

from selenium import webdriver
from time import sleep
import unittest
# driver.find_element_by_xpath("//input[@id=‘sb_form_q‘]").send_keys("CMBC")
# driver.find_element_by_xpath("//input[@id=‘sb_form_go‘]").click()
class Bing(unittest.TestCase):
   """bing 搜索测试"""
   def setUp(self):
   self.driver = webdriver.Firefox()
   self.driver.implicitly_wait(10)
   self.base_url = "http://cn.bing.com/"
 def test_bing_search(self):
   driver = self.driver
   driver.get(self.base_url)

   driver.find_element_by_xpath("//input[@id=‘sb_form_q‘]").send_keys("CMBC")
   sleep(3)
    driver.find_element_by_xpath("//input[@id=‘sb_form_go‘]").click()
 def tearDown(self):
   self.driver.quit()

2.在 Email 文件夹下,创建并编写 send_mail.py 实现发送邮件、测试报告文件排序、执行

from HTMLTestRunner import HTMLTestRunner
from email.mime.text import MIMEText
from email.header import Header
import smtplib
import unittest
import time
import os
# ===================发送邮件=============================
def sendReport(file_new):
   with open(file_new,"rb") as f:
   mail_body = f.read()
   msg = MIMEText(mail_body,"html","utf-8") #构造 MIMEText 对象作为邮件先似乎内容并附加到根容器
   msg[‘Subject‘] = Header("自动化测试报告","utf-8")
   msg[‘From‘] = "[email protected]" #发送地址
   msg[‘To‘] = "[email protected]" #收件人地址,如果是多个的话,以分号隔开
   smtp = smtplib.SMTP(‘smtp.126.com‘)
   smtp.login("[email protected]","Abcd123") #邮箱的账户和密码
   smtp.sendmail(msg[‘From‘],msg[‘To‘].split(‘;‘),msg.as_string())
   smtp.quit()
   print("Test Result has send out!!!")
# =================查找测试报告目录,找到最新的测试报告文件========
def newReport(testReport):
   lists = os.listdir(testReport) #返回测试报告所在的目录下所有文件夹
   lists2 = sorted(lists) # 获得升序排列后端测试报告列表
   file_new = os.path.join(testReport,lists2[-1]) #获得最新一条测试报告的地址
   print(file_new)
   return file_new
# ==================运行===================================
if __name__ == ‘__main__‘:
   test_dir = "D:\\python\\autotest\\Email" #测试用例所在的目录
   test_report = "D:\\python\\autotest\\Email\\result" #测试报告所在目录
   discover = unittest.defaultTestLoader.discover(test_dir,pattern="bing.py")
   now = time.strftime("%Y-%m-%d %H%M%S") #获取当前时间
   filename = test_report + ‘\\‘ + now + ‘result.html‘ #拼接出测试报告名
   fp = open(filename,"wb")
   runner = HTMLTestRunner(stream=fp,title="测试报告",description="测试用例执行情况")
   runner.run(discover)
   fp.close()
   new_report = newReport(test_report) #获取最新的测试报告
   print(new_report)
   sendReport(new_report) #发送测试报告邮件

  

原文地址:https://www.cnblogs.com/yangyang521/p/10077039.html

时间: 2024-10-12 20:20:06

以邮件的形式发送测试报告的相关文章

以邮件附件的形式发送测试报告

1. 创建 EmailAnnex目录, 在 EmailAnnex 下创建 bing.py,并编写 from selenium import webdriver from time import sleep import unittest class Bing(unittest.TestCase): """bing 搜索测试""" def setUp(self): self.driver = webdriver.Firefox() self.dri

已附件的形式发送测试报告

上一篇中提到了已邮件形式发送报告,但是发送的报告不能查看具体的内容,如果想看到具体的内容,需要已附件的形式发送报告 测试用例Demo不用修改,只需要修改发送邮件的代码,具体的就是引入了MIMEMultipart类,邮件中的内容是分段存储的,附件是related类型. 代码如下: from HTMLTestRunner import HTMLTestRunner from email.mime.text import MIMEText from email.header import Header

python3 邮件方式发送测试报告

以邮件方式发送测试报告 import smtplib from email.mime.text import MIMEText class SendEmail: """邮件方式发送报告""" global send_user global email_host global password send_user = "[email protected]" email_host = "smtp.163.com"

python获取天气状况并以邮件的形式发到目的邮箱

python爬取天气情况 下面为示例代码: from urllib.request import urlopen from bs4 import BeautifulSoup from urllib.error import HTTPError import smtplib from email.mime.text import MIMEText from email.utils import formataddr import time """爬虫程序是一个需要后期投入很大维

获取mysql内容,生成xml文件,并且以webservice形式发送

<xyt> <news id> <url></url> <title></title> </news> </xyt> 其实是三个知识点综合到一起的,包括如何访问mysql,如何生成xml文件,如何使用进行webservice开发 好了,话不多说,直接粘代码 package com.service; import java.io.FileOutputStream; import java.io.IOExcepti

C# 发邮件类可发送附件

using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Net.Mail; namespace Ajax.发邮件 { public class GetMail { //MailAddress ds = new MailAddress("[email protected]"); // Send(ds, "[email protected]&

亚马逊索评邮件什么时候发送效果最佳

做亚马逊的卖家知道,review和feedback对新品上架的重要性,review和feedback的数量和好坏决定了你的新品是否能热销,因此,很多卖家都会发送邮件来向客户索要review和feedback,但是,据很多亚马逊卖家反应,邮件的回评率并不高,除了邮件的内容是一方面的因素,很多人可能不知道邮件发送的时间也是另外一个重要的因素 据了解,2016年的10月份,在亚马逊平台政策新规里提到:亚马逊官方允许索取评论,可以向买家索取卖家反馈,但严禁任何金钱或物质等诱因作为买家撰写及移除评论的奖励

Python + HTMLTestRunner + smtplib 完成测试报告生成及发送测试报告邮件

一下代码是自己结合教材,并结合以往用到的实例编写的代码,可以做为参考 import smtplib from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipart from HTMLTestRunner import HTMLTestRunner from email.header import Header import unittest import time,os #==========

Python Selenium unittest+HTMLTestRunner实现 自动化测试及发送测试报告邮件

1.UI测试框架搭建-目录结构 2. 文件介绍 2.1.baseinfo->__init__.py 配置文件定义基础参数 #-*-coding:utf-8-*- #测试用例配置参数 base_url = "http://xxxxx.com" undirect_username = "username" undirect_password = "password" direct_username = "username"