UNITTEST测试框架的使用

本文深入解析unittest框架的功能,包括组织多条测试用例执行、提供断言功能、生成测试报告等。探讨了setUp与tearDown方法的应用,discover方法的使用,以及如何利用unittest生成详细的测试报告。

unittest 框架的作用

~组织多条用例执行
~提供断言的功能
~生成测试报告

unittest 基本框架

setUp()最先执行 用于实例化浏览器 ;get url ;浏览器窗口最大化 ;隐式等待
tearDown()最后执行
用于窗口结束
其它自定义方法一定要 以 test开头 否则执行不了
在这里插入图片描述

  1. 组织多条用例执行
    defaultTestloader中 discover 的使用 discover(‘文件路径,文件名)
    执行 TextTestRunner().run()
    在这里插入图片描述

  2. 提供断言的功能
    基本布尔型断言的两个方法 assertEqual() ;assertIn();
    通过捕获异常try…expcept 验证功能点是否满足
    利用截图记录错误信息get_screenshot_as_file(文件路径+名)
    补充格式化时间 %Y_%m_%d %H_%M_%S
    在这里插入图片描述

  3. 生成测试报告
    1unittest 自带模板 单个用例
    2导入第三方模板 http://tungwaiyip.info/software/HTMLTestRunner.html
    利用unittest 中组织套件测试 unittest.defaultTesrLoader.discover
    ~ 写测试报告的文件路径
    ~时间戳记录时间
    ~记录数据 with open( )
    ~实例化HTMLTestRunner()
    在这里插入图片描述

<think>我们使用中文回答用户关于unittest测试框架使用问题。 首先,介绍unittest的基本用法,包括测试用例的编写、测试套件的创建、断言方法使用以及运行测试。 然后,给出一个简单的代码示例。 最后,按照要求提出3-5个相关问题,以“§§相关问题§§”开头,并列出问题。</think>unittest是Python标准库中的测试框架,基于JUnit设计,使用步骤如下: ### 基本使用流程 1. **导入模块** ```python import unittest ``` 2. **创建测试类**(继承`unittest.TestCase`) ```python class TestMathFunctions(unittest.TestCase): ``` 3. **编写测试方法**(方法名必须以`test_`开头) ```python def test_addition(self): self.assertEqual(1 + 1, 2) # 断言方法验证结果 ``` 4. **配置前置/后置方法**(可选) ```python def setUp(self): # 每个测试方法前执行 self.data = [1, 2, 3] def tearDown(self): # 每个测试方法后执行 del self.data ``` 5. **运行测试** ```python if __name__ == '__main__': unittest.main() # 自动发现并运行所有test_*方法 ``` ### 常用断言方法 | 方法 | 用途 | |------|------| | `assertEqual(a, b)` | 验证a == b | | `assertTrue(x)` | 验证x为True | | `assertRaises(Error)` | 验证代码抛出指定异常 | | `assertIn(a, b)` | 验证a在b中 | | `assertAlmostEqual(a, b)` | 验证浮点数近似相等 | ### 执行方式 - **命令行运行**(自动发现测试) ```bash python -m unittest test_module.py ``` - **指定单个测试** ```bash python -m unittest test_module.TestClass.test_method ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值