自动化测试项目学习笔记(三):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)

运行结果

在这里插入图片描述

目录
相关文章
|
11月前
|
人工智能 搜索推荐 数据管理
探索软件测试中的自动化测试框架选择与优化策略
本文深入探讨了在现代软件开发流程中,如何根据项目特性、团队技能和长期维护需求,精准选择合适的自动化测试框架。
439 11
|
27天前
|
敏捷开发 测试技术 API
测试金字塔:构建高效自动化测试策略的基石
测试金字塔:构建高效自动化测试策略的基石
222 116
|
27天前
|
测试技术 API 数据库
测试金字塔:构建高效自动化测试策略的基石
测试金字塔:构建高效自动化测试策略的基石
239 114
|
11月前
|
测试技术 持续交付
探索软件测试中的自动化测试策略
随着软件开发周期的加速和市场需求的不断增长,传统的手动软件测试方法已难以满足现代软件开发的高效性和准确性要求。本文旨在探讨自动化测试在软件测试中的重要性、实施策略及其对提高软件质量的影响。通过分析自动化测试的优势与挑战,以及提供实用的自动化测试工具和框架选择指南,旨在帮助读者理解并应用自动化测试以提升软件开发效率和产品质量。
|
11月前
|
机器学习/深度学习 人工智能 监控
软件测试中的自动化测试策略与最佳实践##
在当今快速发展的软件行业中,自动化测试已成为确保软件质量和加速产品上市的关键工具。本文将探讨自动化测试的重要性,分析不同类型的自动化测试工具和框架,并深入讨论实施自动化测试的最佳实践。通过案例研究和数据分析,我们将揭示如何有效整合自动化测试到软件开发生命周期中,以及它如何帮助团队提高测试效率和覆盖率。 ##
196 1
|
7月前
|
人工智能 自然语言处理 JavaScript
测试工程师要失业?Magnitude:开源AI Agent驱动的端到端测试框架,让Web测试更智能,自动完善测试用例!
Magnitude是一个基于视觉AI代理的开源端到端测试框架,通过自然语言构建测试用例,结合推理代理和视觉代理实现智能化的Web应用测试,支持本地运行和CI/CD集成。
900 15
测试工程师要失业?Magnitude:开源AI Agent驱动的端到端测试框架,让Web测试更智能,自动完善测试用例!
|
12月前
|
监控 jenkins 测试技术
软件测试中的自动化测试策略与实践##
本文旨在探讨自动化测试在软件开发生命周期中的重要性,以及如何有效地实施自动化测试策略。通过分析自动化测试的优势和挑战,结合具体的实践案例,提出了一系列实用的自动化测试方法和技巧。本文不仅为读者提供了理论知识的深入解析,还强调了实际操作中的关键注意事项,旨在帮助读者更好地理解和应用自动化测试技术,提高软件质量。 ##
158 27
|
11月前
|
Java 测试技术 API
探索软件测试中的自动化测试框架
本文深入探讨了自动化测试在软件开发中的重要性,并详细介绍了几种流行的自动化测试框架。通过比较它们的优缺点和适用场景,旨在为读者提供选择合适自动化测试工具的参考依据。
|
11月前
|
数据管理 测试技术 持续交付
软件测试中的自动化测试策略与最佳实践
在当今快速迭代的软件开发环境中,自动化测试已成为确保软件质量和加速产品上市的关键手段。本文旨在探讨软件测试中的自动化测试策略,包括选择合适的自动化测试工具、构建有效的自动化测试框架以及实施持续集成和持续部署(CI/CD)。通过分析自动化测试的最佳实践,本文为软件开发团队提供了一系列实用的指南,以优化测试流程、提高测试效率并减少人为错误。
305 4
|
11月前
|
监控 测试技术 定位技术
探索软件测试中的自动化测试框架选择与实施###
本文不概述传统意义上的摘要内容,而是直接以一段对话形式引入,旨在激发读者兴趣。想象一下,你是一名勇敢的探险家,面前摆满了各式各样的自动化测试工具地图,每张地图都指向未知的宝藏——高效、精准的软件测试领域。我们将一起踏上这段旅程,探讨如何根据项目特性选择合适的自动化测试框架,并分享实施过程中的关键步骤与避坑指南。 ###
174 4