码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 测试八股文-单元测试框架


    测试八股文-单元测试框架

    总结了一些单元测试框架的常见问题,欢迎评论区补充,如需教学辅导可私信作者

    UnitTest篇
    如何定义一个测试类和测试方法

    继承unittest.TestCase的类即为测试类,成员方法需要以test开头,如需修改命名规则,需要定义ini文件

    UnitTest的测试夹具(前后置方法)有哪些
    • setUpClass、tearDownClass:类级别的前后置增强,需要使用装饰器@classmethod
    • setUp、tearDown:方法级别的前后置增强
    • setUpModule、tearDownModule:模块级别的前后置增强
    如何跳过测试用例

    使用装饰器@unittest.ship(msg)

    什么是测试套件(TestSuite),如何使用?

    多个测试用例的集合称为测试套件

    使用方法

    • 创建测试套件:suite=unittest.TestSuite()

    • 添加测试用例:suite.addTest(ClassName('MethodName'))

    • 批量添加:suite.addTest(unittest.makeSuite(ClassName)),会将指定类中以test开头的方法添加到测试套件中

    • 运行测试套件,需要依赖于TestRunner对象,然后调用run方法

    runner = unittest.TextTestRunner()
    runner.run(suite)
    
    • 1
    • 2
    什么是测试执行器?

    测试执行器是用来执行测试用例和测试套件,并返回测试用例的执行结果,在unittest单元测试框架中,通过TextTestRunner的run方法来执行测试用例或套件,还可以用图形或者文本接口,把返回的测试结果更形象的展现出来,如:HTMLTestRunner

    如何参数化测试

    UnitTest可以结合DDT进行数据驱动

    ddt常用装饰器

    • @ddt.ddt:解析测试类中使用了ddt装饰器的方法
    • @ddt.data:为方法提供数据驱动
    • @ddt.unpack:对ddt参数进行解包
    @ddt.unpack
    @ddt.data([1, 1], [2, 2], [3, 3])
    
    • 1
    • 2

    不解包则认为参数为单个参数,如果进行解包会按照集合中的元素个数从左往右赋值给每一个形参

    如何生成测试报告

    可以使用HTMLReport、BeautifulReport、Allure等,到github中查找项目,查看具体操作方式,此处不进行细讲

  • 相关阅读:
    Linux openvino 环境搭建遇见的问题
    Qt|QLabel显示刷新图像数据
    DeepPersonality框架使用记录
    spring security - 快速整合 springboot
    Java锁小记
    计算机毕业设计ssm社区流浪动物救助系统2r32k系统+程序+源码+lw+远程部署
    《The Art of InnoDB》第二部分|第4章:深入结构-磁盘结构-撕裂的页面(doublewrite buffer)
    Android 13.0 user模式下解除系统进入recovery功能的限制
    基于web多媒体电子贺卡平台
    Supervised Machine Learning Regression and Classification(吴恩达机器学习课程笔记)
  • 原文地址:https://blog.csdn.net/qq_52751442/article/details/134081544
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号