一、TestFixtrue

1、TestFixture简介

TestFixture用在测试方法前,或者测试方法后,主要功能是提供一些测试需要用的装置,这些装置可以是数据,可以是环境配置也可以是一个运行前状态。

2、TestFixture分类

(1)setup(), teardown()的方式,分别在每个测试方法执行前后执行。
(2)setUpClass(), tearDownClass()的方式,分别在每个测试类执行前后执行, setUpClass()和tearDownClass()只会执行一次,即使这个测试类有多个测试函数。

(3)setUpModule :整个模块开始前执行,tearDownModule:整个模块结束时执行。

setUpClass/tearDownClass 为类方法,需要通过@classmethod 进行装饰,另外方法的参数为cls,cls和self没有本质上的区别,都只表示方法的第一个参数

3、实例

import unittest
# 整个模块开始前执行
def setUpModule():print("模块级别开始test module start")
# 整个模块结束时执行
def tearDownModule():print("模块级别结束test module end")class MyTest(unittest.TestCase):# 测试用例类开始前执行@classmethoddef setUpClass(cls) :print("类级别开始 test class start" )# 测试用例类结束时执行@classmethoddef tearDownClass(cls) :print("类级别结束 test class end")# 测试用例开始前执行(以一条测试用例为单位)def setUp(self) -> None:print("用例级别开始 test case start")# 测试用例结束时执行(以一条测试用例为单位)def tearDown(self) -> None:print("用例级别结束 test case end")def test_case1(self):print("用例 test case1")def test_case2(self):print("用例 test case2")if __name__ == '__main__':unittest.main()

->None :建议函数返回None。

二、测试框架

1、自动化测试的设计模式

(1)PMO设计模式

基础封装层

页面对象层

测试用例层

(2)关键字驱动模式

关键字封装

2、公共的封装层

(1)夹具的封装;

(2)selenium二次封装;

(3)ini和yaml全局配置文件封装;

(4)excel、csv文件的读写封装;

(5)数据库操作封装;

(6)调用外部的第三方库封装;

3、数据层

(1)excel数据驱动

(2)csv数据驱动

(3)yaml数据驱动

(4)数据库数据驱动

4、文件层:

(1)HTML报告文件;

(2)log日志文件;

(3)全局配置文件;

(4)错误截图文件;

(5)邮件附件文件;

(6)接口关联文件;

三、忽略测试用例

不需要的测试用例

import unittestclass MyTest(unittest.TestCase):a = 18@unittest.skip('无条件忽略')def test_case1(self):print("用例 test case1")@unittest.skipIf(a >= 16,"条件为true忽略")def test_case2(self):print("用例 test case2")@unittest.skipUnless(a >= 20, "条件为false忽略")def test_case3(self):print("用例 test case3")if __name__ == '__main__':unittest.main()

输出结果:

参考文献:

【1】测试框架实践--TestFixture_疯狂的程序员丶的博客-CSDN博客_fixture test

unittest自动化测试-测试夹具TestFixtrue与忽略测试用例方法相关推荐

  1. Unittest自动化测试框架教程(二)——Python中Fixture测试夹具的使用和setUp方法相关参数传递

    "此文基于系列作品 Unittest自动化测试框架教程(一)--测试用例基本框架介绍 基础上编写,初学者访问此文建议快速浏览链接文章熟悉测试用例基本框架,高手可直接上手阅读 ~ " ...

  2. python+requests+unittest+HTMLTestRunner构建接口自动化测试框架(四)测试用例执行

    python+requests+unittest+HTMLTestRunner构建接口自动化测试框架(一)了解基础框架,读取配置文件 python+requests+unittest+HTMLTest ...

  3. Unittest自动化测试框架教程(四)——Python中的数据驱动测试DDT

     " 数据驱动测试DDT(Data Drivern test),是自动化测试领域优势中亮眼的闪光点,在unittest测试框架中对数据驱动更是提供了强大的支持,文章通过基础概念的引入,介绍了 ...

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

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

  5. Selenium+python怎么搭建自动化测试框架、执行自动化测试用例、生成自动化测试报告、发送测试报告邮件

    目录 一.项目结构介绍 1.mztestpro测试项目 2.bbs目录 3.test_case 二.编写公共模块 三.编写Page Object 四.编写测试用例 五.执行测试用例 小结: 本人在网上 ...

  6. python appium自动化测试框架unittest_Appium基于Python unittest自动化测试 自动化测试框架 -- PO并生成html测试报告...

    基于python单元测试框架unittest完成appium自动化测试,生成基于html可视化测试报告 代码示例: #利用unittest并生成测试报告 class Appium_test(unitt ...

  7. selenium+unittest自动化测试(一)---环境搭建及用例编写规则

    目录 一.selenium.unittest简介 二.环境搭建 1.安装selenium库 2.安装unittest2框架 3.安装浏览器驱动 三.编写规则 1.测试类 2.以test开头 3.set ...

  8. unittest自动化测试测试框架从0到实战详解

    目录 一.单元测试的定义 二.unittest框架及原理 三.unittest的断言 四.TestCase测试用例 五.TestFixure测试夹具 六.TestSuite测试套件 七.TestRun ...

  9. Python学习——UnitTest自动化测试框架

    UnitTest框架的基本使用 1.概念:UnitTest是Python自带的一个单元测试框架,用它来做单元测试 2.UnitTest框架的优势: 能够组织多个用例去执行 提供丰富的断言方法 能够生成 ...

最新文章

  1. OSG的HUD抬头文字显示
  2. python入门要多久-初学者如何快速上手python入门要多久
  3. 学python有哪些用途-Python语言有哪些用途
  4. Divan and bitwise operations 异或,同或,组合数学(1500)
  5. 【限时】推荐算法工程师培养计划
  6. 面向对象的4个基本特征
  7. Wizard of Orz CodeForces - 1467A
  8. Github Action 快速构建 Electron 应用
  9. 并查集算法c语言版,并查集及其C程序实现.doc
  10. CString LPCTSTR LPTSTR 类型的相互转化
  11. 脉冲神经网络的开发公司AI-CTX
  12. 安卓手机怎么root_怎么在腾讯手机管家中一键获取Root权限
  13. [Ubuntu16.04]Anaconda下运行jupyter notebook出现Running as root is not recommended.
  14. 如何做组间差异检验_买套餐送车险,做维修提供代步车,考拉爱车如何实现差异化竞争?...
  15. springboot通过各种不同类型参数获取容器中的bean工具类
  16. 关于 Ubuntu Server 18.04 的网络(dchp/dns/route/PPPoE)
  17. OneNET麒麟座应用开发之五:获取加速度传感器ADXL345数据
  18. c#时间 转换成java_Java与C#时间转换
  19. 基于JAVA开发的在线双人联机坦克大战小游戏
  20. Android常用的几种对话框

热门文章

  1. Efficient Estimation of Word Representations in Vector Space翻译
  2. 神经网络训练多少次合适,深度神经网络如何训练
  3. git clone时The authenticity of host ‘xxx‘ can‘t be established.
  4. 目标检测YOLO实战应用案例100讲-基于卷积神经网络的小目标检测算法研究
  5. SqlServer之xp_cmdshell_使用以及配置
  6. 禁止Debian 11自动休眠
  7. 2020年海思所有芯片合集参考说明
  8. 厚膜电阻和合金电阻的区别都有哪些?快来看看吧
  9. ac3168无线网卡驱动下载_笔记本 及 普通PC 无线网络连接方法
  10. 「教程」游戏开发基础——游戏UI设计基本原则