项目构建和发送邮件

一、项目构建

1、建立项目chen

打开pycharm左上角File>New Project,在Location输入testing项目所在文件夹D:\chen,创建后选择Opin in current window。

2、创建子文件夹

PS:创建文件夹,一定要选Python Package的方式创建。

3、创建测试脚本

4、创建runalltest.py

PS:在runalltest.py这个脚本里面写主函数,控制执行所有的用例。

5、下载生成测试报告的源码

import HTMLTestRunner
import unittest
import os
#测试用例存放路径
casepath = os.path.join(os.getcwd(),"case")
#测试报告存放路径
reportpath = os.path.join(os.getcwd(),"report")
def allcase():'''加载测试用例'''discover = unittest.defaultTestLoader.discover(casepath,pattern="case*.py",top_level_dir=None)return discover
def runcase():'''执行测试用例,生成测试报告'''htmlreportpath = os.path.join(reportpath,"result.html")fp = open(htmlreportpath,"wb")runner = HTMLTestRunner.HTMLTestRunner(stream=fp,title=u"自动化测试报告",description=u"测试用例执行情况")# 调用allcase函数返回值
    runner.run(allcase())fp.close()if __name__ == "__main__":runcase()    

二、发送邮件

import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipartdef send_mail(sender, psw, receiver, smtpserver,reportfile, port=465):'''发送最新的测试报告内容'''#打开测试报告with open(reportfile, "rb") as f:mail_body = f.read()# 定义邮件内容msg = MIMEMultipart()body = MIMEText(mail_body, _subtype='html', _charset='utf-8')msg['Subject'] = u"自动化测试报告"msg["from"] = sendermsg["to"] = receivermsg.attach(body)# 添加附件att = MIMEText(open(reportfile, "rb").read(), "base64", "utf-8")att["Content-Type"] = "application/octet-stream"att["Content-Disposition"] = 'attachment; filename= "report.html"'msg.attach(att)try:smtp = smtplib.SMTP_SSL(smtpserver, port)except:smtp = smtplib.SMTP()smtp.connect(smtpserver,port)# 用户名密码
    smtp.login(sender, psw)smtp.sendmail(sender, receiver, msg.as_string())smtp.quit()if __name__ == '__main__':reportfile = u"F:\\python36\\test\\report\\result.html"#测试报告路径smtpserver = "smtp.qq.com"  #  邮箱服务器sender = "139271007@qq.com" # 自己的账号psw = "password" #自己的密码receiver = "386421542@qq.com" #对方的账号send_mail(sender, psw, receiver, smtpserver,reportfile)

转载于:https://www.cnblogs.com/chen/p/8574239.html

python+selenium+unittest测试框架3-项目构建和发送邮件相关推荐

  1. python+selenium+unittest测试框架1-unittest单元测试框架和断言

    unittest单元测试框架和断言 一.unittest单元测试框架简介 1.导入unittest模块 import unittest 2.定义测试类 class Login(unittest.Tes ...

  2. python+selenium+unittest自动化测试框架

    前言 关于自动化测试的介绍,网上已有很多资料,这里不再赘述,UI自动化测试是自动化测试的一种,也是测试金字塔最上面的一层,selenium是应用于web的自动化测试工具,支持多平台.多浏览器.多语言来 ...

  3. Python单元测试unittest测试框架

    本文的主题是自动化测试框架的实现,在实现之前,先了解一下关于unittest模块的相关知识: Python中有一个自带的单元测试框架是unittest模块,用它来做单元测试,它里面封装好了一些校验返回 ...

  4. 第六章 第二节 selenium+unittest测试框架之批量执行测试用例

    到目前为止,我们执行的用例都很少,将用例写在一个测试文件中就可以去运行.但对于有成百上千用例的实际项目,我们总不能把所有用例都写在一个文件中,那是不现实的,本节我们将进一步学习 TestSuite(测 ...

  5. 使用python构造大量测试数据_python实例编写(6)--引入unittest测试框架,构造测试集批量测试(以微信统一管理平台为例)...

    ---恢复内容开始--- 一.python单元测试实例介绍 unittest框架又叫PyUnit框架,是python的单元测试框架. 先介绍一个普通的单元测试(不用unittest框架)的实例: 首先 ...

  6. 基于Python的接口自动化unittest测试框架和ddt数据驱动详解

    引言 在编写接口自动化用例时,我们一般针对一个接口建立一个.py文件,一条接口测试用例封装为一个函数(方法),但是在批量执行的过程中,如果其中一条出错,后面的用例就无法执行,还有在运行大量的接口测试用 ...

  7. Python+Selenium WebUI自动化框架 -- 实现特殊PO模型

    前言: 设计执行格式,封装PO模型工厂,实现PO模型脱离代码,一套代码执行所有项目的UI自动化,让UI自动化框架脱离高成本.低效率时代,将用例的重用性贯彻到极致,让烦人的PO模型变得无所谓,让一个测试 ...

  8. Python + Selenium + UnitTest自动化测试面试题目整理

    1.如何使用Selenium进行自动化测试 ? 结合Python + Selenium + UnitTest 2.自动化测试框架 分层+PO模式: 包含基础封装层BasePage.PO页面对象层.Te ...

  9. 自动化测试unittest测试框架实例

    本文采用unittest测试框架搭建一个简单的自动化测试实例,完成readmine网站的登录和新建项目用例,并生成测试报告. test_login文件 import unittest from sel ...

  10. UnitTest测试框架全栈详解

    金字塔模型 从软件架构的⻆度来说,测试最重要的步骤是在软件开发的时候界入比较好,所以在早期测试的界入,从软件经济学的⻆度上来说,发现的问题解决成本低,投入的资源比较少.因此,对一个测试的系统,开始最佳 ...

最新文章

  1. 强烈推荐!最好用的《机器学习实用指南》第二版终于来了,代码已开源!
  2. 物联网第一台设备是烤面包机?
  3. 高斯消元法解方程matlab程序,用高斯消元法解线性方程组 的MATLAB程序
  4. 前端学习(1855)vue之电商管理系统电商系统之安装mysql出现VCRUNTIME140_1.dll
  5. 一步一步写算法(之排序二叉树的保存和加载)
  6. 关于在EF中通用方法
  7. 计算机网络工程税率多少,弱电工程增值税6%、9%、13%税率怎样选择?
  8. android 类似按键精灵脚本_脚本编辑器 -- 按键精灵 #Android
  9. Rhino(犀牛)室内模型导入Unity3d快速烘焙光影【2020】
  10. 【统计学】分类数据分析 相关分析 方差分析 比较 研究思路 spss
  11. DASH NET(网速控制,可变)
  12. 读《明朝那些事》有感
  13. Python 爬虫 目标:千图网VIP高清无水印下载即用
  14. EtherNET/IP协议基础知识(下)
  15. java fadein_原生JS实现 fadeIn / fadeOut 方法
  16. python图片合成
  17. VsCode使用及常用命令汇总(Win10)
  18. 外呼系统四大功能,助力企业进入智能电销时代
  19. 微信高级群发之二根据分组进行群发
  20. 云服务器能干什么用?云服务器使用场景列举

热门文章

  1. java jpa自身关联_java-如何通过JPA / Hibernate加入获取两个关联
  2. 设置角速度及生成四元数及利用刚体
  3. mysql视图可以完成的操作_MySQL视图操作
  4. python getopt使用_如何使用getopt.getoptpython中的方法?
  5. python处理二进制文件_python如何对文件进行二进制写操作
  6. VI.Multidocument Transactions
  7. 7.2 重入锁(ReentrantLock)
  8. 数字图像处理(四) 数字增强
  9. /usr/bin/ld: 找不到 -lglut
  10. 怎么样成为一个高手--有悟