jet*_*har 8 python django deprecation-warning
由于某些功能得到使用Django的新版本过时了,有没有办法来检查是对现有项目的代码表示在GitHub上.
一个工具可以做到这一点.有没有办法通过测试用例检测到它.
是否有可能对python版本做同样的事情.
我猜一种方法可能是使用tox运行特定版本的django/python然后检查错误.
我只是在寻找更优雅或更直接的东西,比如说"注意这个功能已被弃用",这可以用像Java这样的强类型语言来完成.
如果有人想要构建这样一个工具,那么如果可能的话,可能是什么的起点.
我认为这必须出现在您项目的单元测试中。
如果您的测试执行的代码将在 Django 的未来版本中弃用,您将收到警告。如果您跳转到该功能已被弃用的 Django 版本,您当然会遇到异常和失败的测试。
您可以告诉 Python 解释器将警告升级为异常,这会导致测试失败。
这里的说明是将相同的技巧应用于流行的nosetests测试框架。
如果您已经(从 Django 文档)知道您正在编写的某些代码需要根据其运行的 Django 版本进行更改(例如您正在分发可重用的 Django 应用程序),我建议使用一种功能检测形式try ... except
例如,在这里我想有条件地使用Django >= 1.6: 的新transaction.atomic功能。
正如您所预期的,然后我在Tox 的帮助下针对不同版本的 Django 运行测试。
| 归档时间: |
|
| 查看次数: |
876 次 |
| 最近记录: |