Python单元测试模块Unittest测试代码简单示例

一、测试项目目录结构:

创建一个项目,目录中有Calculator.py与Demo_test_three.py两个源码文件。Calculator.py是被测试的代码,Demo_test_three.py是执行测试的代码。本示例建了两级目录。一级目录名称:my_unittest;二级目录名称:unittest_demo。执行测试的源码中一开始的导入包语句会看到。

二、被测试的类及类方法源码-Calculator.py:

class Calculator:
    def divide(self, x, y):
        return x/y

三、执行测试的类及类方法源码-Demo_test_three.py

import unittest
from my_unittest.unittest_demo.Calculator import Calculator


class TestCalculator(unittest.TestCase):
    def test_Divide01(self):
        cal = Calculator()
        result = cal.divide(10, 2)
        self.assertEqual(result, 5)

    def test_Divide02(self):
        cal = Calculator()
        result = cal.divide(10, 0.5)
        self.assertEqual(result, 10)

    def test_Divide03(self):
        cal = Calculator()
        result = cal.divide(10, 0)
        self.assertEqual(result, 0)


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

四、执行测试的代码要点:

首先定义了测试类TestCalculator。继承于父类unittest.TestCase模块。该测试类中包含三个测试方法test_Divide01、test_Divide02、test_Divide01,即三个测试用例。第一个测试用例:用10除以2,预期结果为5,测试结果通过;第二个测试用例:用10除以0.5,为了观察运行结果,刻意设置错误的预期结果为10,但实际结果为20,出现断言错误,测试失败。第三个测试用例:实现异常测试。用10除以0,出现零除运行错误,提示不能用0作为分母。最后调用unittest.main()方法执行当前类中的所有test开头的方法直接运行程序。不必再专门对TestCalculator进行实例化。

五、结论:

Calculator类的Divide方法具有明显的Bug,该方法没有对输入参数进行校验。导致在分母为0时运行错误。测试人员发现Bug后应及时通知开发人员修复,避免造成损失。这个简单示例展现了Unittest的使用价值。体现了测试工作在程序开发中的重要意义。

  • 8
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

m0_64880493_江哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值