14、Python 测试:保障稳定性与可靠性的关键实践

Python 测试:保障稳定性与可靠性的关键实践

1. 测试的重要性与范围

Python 社区正逐步采用预提交系统,这表明测试不仅是为了防止新手犯错,随着 Python 规模和复杂度的增加,即使是核心开发团队的资深成员也可能因测试而避免错误。这种做法受谷歌预提交系统的影响,实践证明其在 Python 开发中同样有益。

Python 开发中的测试范围不仅局限于代码库本身。当语言发生变更时,可能会意外破坏向后兼容性。若使用 Python 的应用程序有全面的测试系列,那么这些测试在很多方面也成为了对 Python 语言的测试,即 Python 的测试范围延伸到了所有用 Python 编写的测试。

2. 确保正确性

测试的主要目的之一是发现 bug。开发者在提交代码前通常会运行大部分测试,因为完整的测试套件运行时间超过一小时,而我们要求开发者运行的测试最多只需七分钟,这是大多数开发者愿意等待的时长。

3. Buildbot 系统

Buildbot 系统会在多个平台上对每次提交进行测试,它运行在所有活跃分支(目前为 2.6、trunk [2.7]、3.1 和 py3k [3.2])的大约 15 - 20 种不同架构上,并且还会增加更多系统。这些机器由捐赠而来,我们也一直在寻求更多样化的平台。当任何一个 buildbot 检测到构建或测试失败时,会向 python - checkins 邮件列表发送邮件。

以下是 Buildbot 系统的工作流程 mermaid 图:

graph LR
    A[代码提交] -->
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值