Testes para ImportErrors em Python
-
20-08-2019 - |
Pergunta
Nós estamos tendo um problema real com as pessoas check-in de código que não funciona porque algo tem sido reformulado. Evidentemente, este é em parte porque nossos desenvolvedores realmente não tem nenhum boas ferramentas para encontrar esses tipos de erros facilmente.
Existem algumas ferramentas para ImportErrors ajudar a encontrar em Python? Claro, a resposta correta aqui é "você deve usar os testes de unidade para isso." Mas, eu estou em terra código legado (pelo menos por definição Michael das penas), para que os nossos testes de unidade são algo que estamos trabalhando fortemente.
Entretanto, seria bom ter algum tipo de ferramenta que irá percorrer cada diretório e importar cada arquivo dentro dele apenas para encontrar todos os scripts que têm ImportErrors (como por exemplo, se um arquivo ou classe foi rebatizado recentemente) . Suponho que isto não seria terrivelmente difícil escrever eu mesmo, mas existem programas que já estão escritas para fazer isso?
Solução
pychecker é para você. Ele importa os módulos e vai encontrar esses erros.
http://pychecker.sourceforge.net/
Oh, e "pylint
Outras dicas
Algo como isso?
import os
for x in os.listdir("some/path"):
execfile( x )
Isso é o suficiente, ou você precisa de mais?
Note que qualquer módulo que carece if __name__ == "__main__":
vai - obviamente -. Decolar e começar a fazer coisas