python django 表单_编写你的第一个 Django 补丁

首先运行 Django 的测试套件¶

当你贡献代码给 Django 的时候,你修改的代码千万不要给其它部分引入新的 bug。 有个办法可以在你更改代码之后检查 Django 是否能正常工作,就是运行 Django 的测试套件。如果所有的测试用例都通过,你就有理由相信你的改动完全没有破坏 Django。如果你从来没有运行过 Django 的测试套件,那么比较好的做法是事先运行一遍,熟悉下正常情况下应该输出什么结果。

运行测试套件之前,先 cd 进入 Django 的 test/ 目录,安装其依赖,运行:

$ pip install -r requirements/py3.txt

如果安装过程中发生了错误,可能是你的系统缺少一个或多个 Python 依赖包。请参考安装失败的包的文档或者在网上搜索提示的错误信息。

现在你可以运行测试套件。如果你用的是 GNU/Linux, macOS 或者其它类 Unix 系统,运行:

$ ./runtests.py

现在坐下来放松一下。Django 完整的测试套件有超过 9600 种不同的测试,所以它需要运行 5 到 15 分钟,这取决于你的电脑的速度。

Django 的测试套件运行时,您将看到一个字符流代表每个测试的运行的状态。 E 表示测试中出现异常, F 表示断言失败。这两种情况都被认为测试失败, x 和 s 分别表示与期望结果不同和跳过测试,点表示测试通过。

缺失外部依赖库通常会导致测试被跳过;查看 Running all the tests 获取依赖库列表,如果你修改了测试代码,请同时安装相关依赖库(本教程无需额外依赖库)。某些测试使用了特定的数据库后端,如果当前测试设置并未使用此数据库后端,那么这些相关的测试也会被跳过。SQLite 是默认的数据库后端。如果想使用其他后端进行测试,查看 Using another settings module。

一旦测试完成,你将被告知测试通过与否。正因你尚未修改 Django 代码,整个测试套件 应该 成功通过。如果遇到失败或错误,请确认是否遵照了之前所有的步骤。查看 Running the unit tests 了解更多。如果你使用的是 Python 3.5+,可能会产生一些和 deprecation 警告相关的失败,可忽略。这些失败已在 Django 中得到修复。

注意最新版本 Django 分支不总是稳定的。当在分支上开发时,你可以查看代码持续集成构建页面的信息 Django's continuous integration builds 来判断测试错误只在你指定的电脑上发生,还是官方版本中也存在该错误。如果点击某个构建信息,可以通过 "Configuration Matrix" 查看错误发生时 Python 以及后端数据库的信息。

Note

在本教程以及处理工单所用分支中,测试使用数据库 SQLite 即可,然而在某些情况下需要(有时需要) ,参考 :ref:`run the tests using a different database `。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值