zoukankan      html  css  js  c++  java
  • 以邮件的形式发送测试报告

    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'] = "hblxp4321@126.com" #发送地址
       msg['To'] = "hblxp4321@126.com" #收件人地址,如果是多个的话,以分号隔开
       smtp = smtplib.SMTP('smtp.126.com')
       smtp.login("hblxp4321@126.com","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) #发送测试报告邮件
    

      

  • 相关阅读:
    虚函数和纯虚函数
    MS CRM 2011中PartyList类型字段的实例化
    MS CRM 2011的自定义与开发(12)——表单脚本扩展开发(4)
    MS CRM 2011的自定义与开发(12)——表单脚本扩展开发(2)
    MS CRM 2011的自定义和开发(10)——CRM web服务介绍(第二部分)——IOrganizationService(二)
    MS CRM 2011 SDK 5.08已经发布
    MS CRM 2011 Q2的一些更新
    最近很忙
    Microsoft Dynamics CRM 2011最近的一些更新
    补一篇,Update Rollup 12 终于发布了
  • 原文地址:https://www.cnblogs.com/yangyang521/p/10077039.html
Copyright © 2011-2022 走看看