我们已经使用Django很长一段时间了.现在没有使用一些旧代码.如何找到不再使用的代码并将其删除.
我使用了带有单元测试的coverage.py,它工作正常并显示从未使用过哪部分代码,但覆盖的测试非常低.有没有办法在WSGI服务器上使用它来查找哪些代码从未提供任何Web请求?
最佳答案
这取决于未使用代码的含义.
对于无法访问的死代码,从未调用函数,从未实例化的类,您可以使用纯静态代码分析器来查找它们. Pylint是个不错的选择.请记住,这不是100%准确,误报是可能的:
# static analysis can't detect methods called this way
func = getattr(obj,"func_name")
func()
对于可访问但从未到达的代码.您必须依赖coverage.py等工具,并提高测试覆盖率.