2、Python 测试全攻略:自动化与驱动开发

Python 测试全攻略:自动化与驱动开发

1. 测试的乐趣与收益

编程过程中,测试常被视为徒劳或浪费时间的事。但实际上,测试可以变得轻松有趣且富有成效。比如回忆一下曾遇到的恼人 bug,可能是数据库模式不匹配、数据结构错误等。若有一小段代码能在恰当时间捕捉到该 bug 并告知你,而所有代码都配有这样易执行的测试代码,那 bug 存活时间会大大缩短。

基本思路是用简单易写的代码片段告知计算机期望结果,让计算机在编码过程中反复核对。由于期望易描述,可先写下期望,让计算机承担大部分调试负担,这样能快速完成测试编写,进而专注于更有趣的事。最终会得到一个经过充分测试、可高度信赖的代码库,能尽早发现并快速修复 bug,且测试由计算机根据你的设定完成。

自动化测试能捕捉从细微拼写错误到数据库访问代码过时等各种问题,快速定位错误位置,避免大量精力和麻烦。花更少时间调试且确保结果正确,会让编程更有趣;短时间内产出高质量代码会更有利可图。测试套件能提供即时反馈,可随时运行代码片段,提高编程的满意度和生产力。

2. 测试的层次

测试通常根据被测试组件的复杂程度分为几类,主要关注的是最低层次的单元测试,因为它是其他测试类别的基础,其他测试类别基于相同原则。

2.1 单元测试

单元测试针对程序中最小的可能部分,通常是单个函数或方法。关键在于“单个”,若无法再有意义地细分,那它就是一个“单元”。例如:

def quadratic(a, b, c, x):
    return a * (x ** 2) + b * x + c

你可能感兴趣的:(Python测试,自动化测试,测试驱动开发)