《基于Python的全栈自动化测试》之unittest.TestCase(二)--- 断言assert

 断言:

    接着上篇,用例里需要用到断言,来验证实际结果是否符合预期结果,前面有讲过,unittest.TestCase 有封装好的断言方法,我们的测试类继承了 TestCase 这个父类,所以我们可以直接在测试用例里调用断言 assertEqual 方法,示例如下:

import unittest
from class_13.math import Math

class TestMath(unittest.TestCase):
    """Math的测试类"""
    def test_add(self):  # 测试加法
        result = Math(15, 30).add()
        expect = 45
        self.assertEqual(result, expect)
        print('加法用例执行完毕!')

    def test_sub(self):  # 测试减法
        result = Math(15, 30).sub()
        expect = 444
        self.assertEqual(result, expect)
        print('减法用例执行完毕!')

    def test_multiply(self):  # 测试乘法
        result = Math(15, 30).multiply()
        expect = 450
        self.assertEqual(result, expect)
        print('乘法用例执行完毕!')

    def test_divide(self):  # 测试除法
        result = 
### Python Unittest 自动化测试教程 #### 创建待测函数 为了演示 `unittest` 的使用,先定义一个简单的加法函数作为被测试对象。 ```python def add(a, b): return a + b ``` #### 编写单元测试用例 创建一个继承自 `unittest.TestCase` 类的测试类来编写具体的测试逻辑。每一个以 `test_` 开头的方法都是一个独立的测试案例[^1]。 ```python import unittest class TestAddFunction(unittest.TestCase): def test_add_positive(self): result = add(1, 2) expected_value = 3 message = "Positive numbers addition failed" assert result == expected_value, message def test_add_negative(self): result = add(-1, -1) expected_value = -2 message = "Negative numbers addition failed" assert result == expected_value, message ``` 上述代码中,通过断言语句验证实际返回值与预期结果是否一致,并附带错误提示信息以便于调试。 #### 组织多个测试集成为套件 当项目规模增大时,可能需要管理更多的测试用例甚至来自不同模块的测试集合。此时可以利用 `TestLoader()` 和 `TestSuite()` 来构建更复杂的测试结构[^2]。 ```python from unittest import TestLoader, TextTestRunner, TestSuite def create_test_suite(): suite1 = TestLoader().loadTestsFromTestCase(TestAddFunction) combined_suites = TestSuite([suite1]) return combined_suites if __name__ == "__main__": verbosity_level = 2 # 控制输出详细程度 runner = TextTestRunner(verbosity=verbosity_level) suite = create_test_suite() runner.run(suite) ``` 这段脚本展示了如何加载特定测试类到测试集中,并设置运行器参数控制日志级别,最后执行整个测试流程。 #### 探索更多功能 对于Web API或其他服务端接口来说,还可以借助工具如 Postman 导出初始请求模板,再转换成适合 `unittest` 框架的形式来进行自动化测试[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值