Python 官方文档:入门教程 => 点击学习
目录一、前言二、实现1.doctest2.unittest一、前言 python的两个单元测试包分别是 doctest 和 unittest,这两个包的使用起来各有长处,适用于不同的
python的两个单元测试包分别是 doctest 和 unittest,这两个包的使用起来各有长处,适用于不同的场景
先写一个待测试的方法
def add(num1, num2):
return num1 + num2
def add(num1, num2):
"""
直接写在待测方法中
>>> add(14, 5)
19
>>> add(14, 5) > 1
True
>>> add(20, 30, 70)
Traceback (most recent call last):
...
TypeError: add() takes 2 positional arguments but 3 were given
"""
return num1 + num2
if __name__ == "__main__":
import doctest
doctest.testmod()
运行上面的代码什么都不会输出,因为预测结果全部正确,只有在预测结果错误的时候才会给提示
ps:
import unittest
# 引入上面的待测试方法
from src.main.add import add
class TestStatisticalFunctions(unittest.TestCase):
def test_add(self):
self.assertEqual(add(14, 5), 19) # 断言 add(14, 5) 的结果为 19
self.assertTrue(add(14, 5) > 1, True) # 断言 add(14, 5) > 1 的结果为 True
with self.assertRaises(TypeError): # 断言 add(20, 30, 70) 抛出 TypeError 异常
add(20, 30, 70)
if __name__ == '__main__':
unittest.main()
同样,运行上面的代码什么都不会输出,因为预测结果全部正确,只有在预测结果错误的时候才会给提示
到此这篇关于Python单元测试的两种写法的文章就介绍到这了,更多相关Python单元测试内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
--结束END--
本文标题: 详解Python单元测试的两种写法
本文链接: https://lsjlt.com/news/119214.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0