自动化测试项目学习笔记(三):Unittest加载测试用例的四种方法

简介: 本文介绍了使用Python的unittest框架来加载测试用例的四种方法,包括通过测试用例类、模块、路径和逐条加载测试用例。

学习说明

这里主要是学习加载测试用例的四种方法,以便于在实际工程中进行使用。

  • [ ] 方法1:通过测试用例类进行加载(loadTestsFromTestCase):
  • 实例化->通过测试用例类进行加载->加载后在运行
  • 实例化有两种方法(测试加载器TestLoader和测试套件TestSuite)
    loader = unittest.TestLoader() # 测试加载器
    suite = unittest.TestSuite() # 测试套件
  • 两者都有了我们直接通过加载器来加载测试套件(addTest)
    suite.addTest(loader.loadTestsFromTestCase(MyTestCase03))
    suite.addTest(loader.loadTestsFromTestCase(MyTestCase04))
  • 加载之后在运行(runner)
    runner = unittest.TextTestRunner()
    runner. Run(suite)
  • [ ] 方法2:通过模块来加载(loadTestsFromModule):
  • 实例化->通过模块来加载->加载后在运行
    suite.addTest(loader.loadTestsFromModule(MyTestCase03))
    suite.addTest(loader.loadTestsFromModule(MyTestCase04))
  • [ ] 方法3:通过路径来加载(Discover):
  • 实例化->通过模块来加载->加载后在运行
    import os
    path = os.path.dirname(os.path.abspath(__file__))
    suite.addTest(loader.Discover(path))
  • [ ] 方法4:通过逐条加载测试用例(low):
  • 实例化->通过逐条加载测试用例->加载后在运行
    case1 = MyTest1("test1")
    case2 = MyTest1("test2")
    suite.addTest(case1)
    suite.addTest(case2)

具体代码

import unittest, os

class MyTestCase03(unittest.TestCase):

    def test01(self):
        print("test01")
    def test02(self):
        print("test02")

class MyTestCase04(unittest.TestCase):

    def test03(self):
        print("test03")
    def test04(self):
        print("test04")

if __name__ == '__main__':

    loader = unittest.TestLoader() # 测试加载器
    suite = unittest.TestSuite() # 测试套件
    """方法1:通过测试用例类加载"""
    # 两者都有了我们直接通过加载器来加载测试套件
    suite.addTest(loader.loadTestsFromTestCase(MyTestCase03))
    suite.addTest(loader.loadTestsFromTestCase(MyTestCase04))
    """方法2:通过模块来加载"""
    suite.addTest(loader.loadTestsFromModule(MyTestCase03))
    suite.addTest(loader.loadTestsFromModule(MyTestCase04))
    # """方法2:通过路径来加载"""
    path = os.path.dirname(os.path.abspath(__file__))
    suite.addTest(loader.discover(path))
    # 加载之后在运行
    runner = unittest.TextTestRunner()
    runner.run(suite)

运行结果

在这里插入图片描述

目录
相关文章
|
3月前
|
测试技术 开发者 Python
Python单元测试入门:3个核心断言方法,帮你快速定位代码bug
本文介绍Python单元测试基础,详解`unittest`框架中的三大核心断言方法:`assertEqual`验证值相等,`assertTrue`和`assertFalse`判断条件真假。通过实例演示其用法,帮助开发者自动化检测代码逻辑,提升测试效率与可靠性。
363 1
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
如何让AI更“聪明”?VLM模型的优化策略与测试方法全解析​
本文系统解析视觉语言模型(VLM)的核心机制、推理优化、评测方法与挑战。涵盖多模态对齐、KV Cache优化、性能测试及主流基准,助你全面掌握VLM技术前沿。建议点赞收藏,深入学习。
813 8
|
6月前
|
测试技术
软考软件评测师——可靠性测试测试方法
软件可靠性是指软件在规定条件和时间内完成预定功能的能力,受运行环境、软件规模、内部结构、开发方法及可靠性投入等因素影响。失效概率指软件运行中出现失效的可能性,可靠度为不发生失效的概率,平均无失效时间(MTTF)体现软件可靠程度。案例分析显示,嵌入式软件需满足高可靠性要求,如机载软件的可靠度需达99.99%以上,通过定量指标评估其是否达标。
|
6月前
|
消息中间件 缓存 监控
性能测试怎么做?方法、流程与核心要点解析
本文系统阐述了性能测试的核心方法论、实施流程、问题定位优化及报告编写规范。涵盖五大测试类型(负载验证、极限压力、基准比对、持续稳定性、弹性扩展)与七项关键指标,详解各阶段任务如需求分析、场景设计和环境搭建,并提供常见瓶颈识别与优化实战案例。最后规范测试报告内容框架与数据可视化建议,为企业级实践提出建立基线库、自动化回归和全链路压测体系等建议,助力高效开展性能测试工作。
|
10月前
|
编解码 缓存 Prometheus
「ximagine」业余爱好者的非专业显示器测试流程规范,同时也是本账号输出内容的数据来源!如何测试显示器?荒岛整理总结出多种测试方法和注意事项,以及粗浅的原理解析!
本期内容为「ximagine」频道《显示器测试流程》的规范及标准,我们主要使用Calman、DisplayCAL、i1Profiler等软件及CA410、Spyder X、i1Pro 2等设备,是我们目前制作内容数据的重要来源,我们深知所做的仍是比较表面的活儿,和工程师、科研人员相比有着不小的差距,测试并不复杂,但是相当繁琐,收集整理测试无不花费大量时间精力,内容不完善或者有错误的地方,希望大佬指出我们好改进!
676 16
「ximagine」业余爱好者的非专业显示器测试流程规范,同时也是本账号输出内容的数据来源!如何测试显示器?荒岛整理总结出多种测试方法和注意事项,以及粗浅的原理解析!
|
10月前
|
人工智能 自然语言处理 测试技术
AxBench:斯坦福大学推出评估语言模型控制方法的基准测试框架
AxBench 是由斯坦福大学推出,用于评估语言模型可解释性方法的基准测试框架,支持概念检测和模型转向任务,帮助研究者系统地比较不同控制技术的有效性。
268 5
AxBench:斯坦福大学推出评估语言模型控制方法的基准测试框架
|
Java 测试技术 C#
自动化测试之美:从Selenium到Appium
【10月更文挑战第3天】在软件开发的海洋中,自动化测试如同一艘航船,引领着质量保证的方向。本文将带你领略自动化测试的魅力,从Web端的Selenium到移动端的Appium,我们将一探究竟,看看这些工具如何帮助我们高效地进行软件测试。你将了解到,自动化测试不仅仅是技术的展示,更是一种提升开发效率和产品质量的智慧选择。让我们一起启航,探索自动化测试的世界!
|
Web App开发 IDE 测试技术
自动化测试的利器:Selenium 框架深度解析
【10月更文挑战第2天】在软件开发的海洋中,自动化测试犹如一艘救生艇,让质量保证的过程更加高效与精准。本文将深入探索Selenium这一强大的自动化测试框架,从其架构到实际应用,带领读者领略自动化测试的魅力和力量。通过直观的示例和清晰的步骤,我们将一起学习如何利用Selenium来提升软件测试的效率和覆盖率。
|
测试技术 数据安全/隐私保护 开发者
自动化测试的奥秘:如何用Selenium和Python提升软件质量
【9月更文挑战第35天】在软件开发的海洋中,自动化测试是那艘能引领我们穿越波涛的帆船。本文将揭开自动化测试的神秘面纱,以Selenium和Python为工具,展示如何构建一个简单而强大的自动化测试框架。我们将从基础出发,逐步深入到高级应用,让读者能够理解并实现自动化测试脚本,从而提升软件的质量与可靠性。

热门文章

最新文章