python_unittest框架

unittest是python内置的单元测试框架,具备编写用例、组织用例、执行用例、输出报告等自动化框架的条件

1. 在pycharm中新建unittest模块

2. unitest中包含四个常用套件

import unittest


class LocateDemo(unittest.TestCase):
    # 测试环境的准备(所有的测试用例执行之前的准备工作)
    @classmethod
    def setUpClass(cls):
        print("所有的测试用例执行之前的准备工作")
        
    # 每一条测试用例执行之前的准备工作
    def setUp(self):
        print()
        print("每一条测试用例执行之前的准备工作")

    # 每一条测试用例执行完后的收尾工作
    def tearDown(self):
        print("每一条测试用例执行完后的收尾工作")

    # 所有的测试用例执行完后的收尾工作
    @classmethod
    def tearDownClass(cls):
        print("所有的测试用例执行完后的收尾工作")

    # 所有的测试用例都是实例方法,且方法名称必须以test_开头
    def test_user_login(self):
        print("这是测试用户注册的用例")
        self.assertEqual(True, True)

    def test_second_case(self):
        print("这是第二条测试用例")
        self.assertEqual(True, True)


if __name__ == '__main__':
    unittest.main()

3. 有8种常用的断言方法

1. 判断结果是否为空

2. 判断结果是否不为空

3. 判断实际结果与预期结果是否相等

4. 判断实际结果与预期结果是否不相等

5. 判断实际结果是否被包含在预期结果中

6. 判断实际结果是否不被包含在预期结果中

7. 判断结果是否为真

8. 判断结果是否为假

 

4. 案例

mathDemo.py

class MathDemo:

    def add(self, num1, num2):
        sum = num1+num2
        return sum

    def sub(self, num1, num2):
        sum = num1 - num2
        return sum

mathDemoTest.py

import unittest
from mathDemo import MathDemo


class MyTestCase(unittest.TestCase):
    # 在执行所有的测试用例之前必须对mathDemo类进行实例化
    @classmethod
    def setUpClass(cls):
        cls.mathDemo = MathDemo()

    # 对MathDemo类中的add方法编写测试用例
    def test_add(self):
        actual_value = self.mathDemo.add(1, 3)
        # 断言:用来判断实际结果是否与预期结果相符的方法
        self.assertEqual(actual_value, 4)

    # 对MathDemo类中的add方法编写测试用例
    def test_add2(self):
        actual_value = self.mathDemo.add(-1, -3)
        # 断言:用来判断实际结果是否与预期结果相符的方法
        self.assertEqual(-4, actual_value)


if __name__ == '__main__':
    unittest.main()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值