目录

一、测试框架的价值

二、框架设计目标

三、框架设计过程

四、框架实现

1)unittest框架的使用要求

2)unittest测试框架的基本组成要素

3)unittest框架的执行顺序

4)三种不同的框架运行方式对比

1、unittest.main()

2、测试套件执行

3、测试文件执行

5)生成测试报告


一、测试框架的价值

  1. 提高接口测试执行和接口回归测试的效率
  2. 节约人工成本,可以安排在夜间执行
  3. 提高脚本的复用性,适应各种不同的接口测试需求
  4. 提高接口测试的规范性,把所有的脚本以及测试文档进行统一管理

二、框架设计目标

最终只需要调整框架配置文件的一些参数,不需要人工干预测试脚本的执行

三、框架设计过程

  1. 明确框架层次,基本层次如下:

    1. 配置层
    2. 脚本层
    3. 数据层
    4. 报告层
  2. 对框架的设计进行评审
  3. 创建框架对应的文件夹
  4. 框架的设计
  5. 框架的实现
  6. 框架的调试运行

四、框架实现

1)unittest框架的使用要求

  1. import unittest
  2. 定义测试类需要继承unittest:class测试类名(unittest.TestCase)

2)unittest测试框架的基本组成要素

  1. setUp初始化方法:可选,是测试前期的初始化工作
  2. test_XXX测试方法:
    1. 测试方法的名字必须以test_打头
    2. 加入测试断言,将脚本预期结果和实际结果进行比对
  3. tearDown资源回收:可选,一般作为关闭对象,释放对象。

3)unittest框架的执行顺序

  1. setUp进行初始化
  2. 执行test测试方法
  3. tearDown进行资源回收

4)三种不同的框架运行方式对比

1、unittest.main()

  1. 依次执行当前文件中对应测试类的所有测试方法
  2. 执行顺序按照asc码顺序,所以一般测试方法建议定义为test_case1、test_case2
  3. 特点:执行当前类中对应的所有测试方法

2、测试套件执行

  1. 声明测试套:suite = unittest.TestSuite()
  2. 通过addtest方法添加测试用例:suite.addTest(类名("测试方法名"))
  3. 声明测试运行对象:runner = unittest.TextTestRunner()
  4. 执行测试套:runner.run(suite)
  5. 特点:按照加载顺序的顺序和个数进行执行
  6. 注意:运行模式要改为以python文件而不是测试框架模式运行(在框架中右键默认运行方式是以框架模式运行的)

3、测试文件执行

  1. 声明文件所在路径
  2. 定义discover对象打开相关的脚本文件:discover = unittest.defaultTestLoader.discover(文件路径, pattern="test_*.py")
  3. 声明测试运行对象:runner = unittest.TextTestRunner()
  4. 执行测试套:runner.run(discover)
  5. 特点:
    1. 执行任意指定路径下的任意相关命名的python测试脚本。
    2. 执行每一个文件中所有的测试方法,顺序也是安装asc码顺序进行

5)生成测试报告

生成HTML格式的测试报告,步骤:

  1. 下载HTMLTestRunner.py:下载地址http://tungwaiyip.info/software/HTMLTestRunner.html
  2. 拷贝到项目文件夹下
  3. 导入HTMLReport包:from HTMLTestRunner import HTMLTestRunner
  4. 在main()函数下生成测试报告的脚本:
    1. 获取测试报告文件应放置的路径
    2. 给定具体的测试报告文件名,以wb的方式打开文件file = open("xxx","wb")
    3. 设置测试套,并添加要测试的方法
    4. 生成HTML报告:runner = HTMLTestRunner(stream=file, title="标题", description="描述")
    5. 调用runner对象执行测试套:runner.run(suite)
    6. 关闭测试报告文件
  5. 注意:运行模式要改为以python文件而不是测试框架模式运行(在框架中右键默认运行方式是以框架模式运行的)

unittest框架知识总结相关推荐

  1. unittest框架-基础知识

    一.什么是UnitTest框架 UnitTest是python自带的一个单元测试框架,用它来做单元测试. 对于测试来说,unittest框架的作用是自动化脚本(用例代码)执行框架,使用unittest ...

  2. selenium-webdriver(python) (十六) --unittest 框架

    学习unittest 很好的一个切入点就是从selenium IDE 录制导出脚本.相信不少新手学习selenium 也是从IED 开始的. IDE学习参考: 菜鸟学自动化测试(一)----selen ...

  3. 自动化测试:Selenium8种元素定位+unittest框架设计

    作者简介: 笔名,软件测试君.参与过汇丰银行,国家电网,中国电信等多个大型项目的研发和管理,擅长的技术领域为安全测试,性能测试,自动化框架搭建与维护,曾受南京航空航天大学邀请分享Linux.oracl ...

  4. 自动化测试——unittest框架

    自动化测试--unittest框架 文章目录 自动化测试--unittest框架 unittest 一.TestCase(测试用例) 二.TestSuite(测试套件)和TestRunner(测试执行 ...

  5. 这些自动化测试框架知识你还不知道?

    这些自动化测试框架知识你还不知道?! 无论是在自动化测试实践,还是日常交流中,经常听到一个词:框架.之前学习自动化测试的过程中,一直对"框架"这个词知其然不知其所以然. 最近看了很 ...

  6. Selenium自动化测试:8种元素定位+unittest框架设计

    作者简介: 笔名,唐米.参与过汇丰银行,国家电网,中国电信等多个大型项目的研发和管理,擅长的技术领域为安全测试,性能测试,自动化框架搭建与维护,曾受南京航空航天大学邀请分享Linux.oracle等测 ...

  7. unittest 框架学习

    为什么80%的码农都做不了架构师?>>>    今天我学习了,怎么把testcase分到不同的文件中,然后在集中到一个testsuite中一起跑,我还学会了怎么打包,怎么引用. 打包 ...

  8. unittest框架执行用例

    pycharm中运行脚本的方式总共有三种,分别为:unittest模式,pytest模式,普通模式,今天主要来聊一聊unittest模式执行与普通执行(因为最近在学习unittest框架,所以pyte ...

  9. selenium + python自动化测试unittest框架学习(二)

    1.unittest单元测试框架文件结构 unittest是python单元测试框架之一,unittest测试框架的主要文件结构: File >report >all_case.py &g ...

最新文章

  1. python 字典
  2. 如何调试Node.js应用程序?
  3. 银行业双活数据中心-F5在双活数据中心中的应用
  4. Android系统匿名共享内存(Anonymous Shared Memory)C++调用接口分析(6)
  5. [笔记]C#基础入门(十四)——C#用流程图描述程序逻辑
  6. DOTNET Core MVC(二)路由初探
  7. winrar 去广告_解压缩工具之WinRAR下载安装教程
  8. kaike的FLAGs
  9. 【软件测试】单元测试是软件测试的最基础环节
  10. eclipse idea 导入maven项目
  11. python编写俄罗斯方块代码详解_python如何写个俄罗斯方块
  12. 利用C#实现Pdf转图片
  13. 理解“万事万物皆对象“
  14. Python爬虫入门教程【6】:蜂鸟网图片爬取之一
  15. Linux第一个正式版本,你安装的第一个Linux系统是什么版本的,成功没有啊?
  16. [从0开始机器学习]5.逻辑回归 二分类
  17. WATCH ME 2007
  18. 分享Silverlight/WPF/Windows Phone一周学习导读
  19. 当ChatGpt接入微信群之后。。。
  20. dede {dede:channel currentstyle 中使用~seotitle~

热门文章

  1. 485转 232设计
  2. 牛客国庆集训派对Day2 H 卡牌游戏(花式蒙期望)
  3. TCPMP编译方法(转载)
  4. 修改Anaconda默认的启动路径--亲测有效【附anaconda云盘链接】
  5. 射击训练模拟设备有哪些?室内靶场使用设备介绍
  6. 使用强化学习建立下一个最佳活动(或称行动营销)模型【译文初稿】
  7. 锐捷交换机访问控制策略配置实例
  8. 曾国藩的12条自律条规
  9. android判断手机屏幕横竖屏
  10. 东芝转型再遭财务造假拦路 陷业绩低迷泥沼