A estrutura de diretórios muito comum, mesmo para um módulo Python simples, parece separar os testes de unidade em seu próprio test
diretório:
new_project/
antigravity/
antigravity.py
test/
test_antigravity.py
setup.py
etc.
por exemplo, veja este tutorial do projeto Python .
Minha pergunta é simplesmente: Qual é a maneira usual de realmente executar os testes? Eu suspeito que isso seja óbvio para todos, exceto eu, mas você não pode simplesmente executar a python test_antigravity.py
partir do diretório de teste, pois import antigravity
isso falhará, pois o módulo não está no caminho.
Sei que poderia modificar o PYTHONPATH e outros truques relacionados ao caminho de pesquisa, mas não acredito que seja a maneira mais simples - tudo bem se você é o desenvolvedor, mas não é realista esperar que seus usuários usem se eles apenas quiserem verificar os testes. passagem.
A outra alternativa é apenas copiar o arquivo de teste para o outro diretório, mas parece um pouco idiota e perde o sentido de tê-los em um diretório separado para começar.
Então, se você tivesse baixado a fonte do meu novo projeto, como você executaria os testes de unidade? Prefiro uma resposta que me permita dizer aos meus usuários: "Para executar os testes de unidade, faça o X."
unittest
interface da linha de comandos, conforme descrito na minha resposta abaixo, para que você não precise adicionar o diretório ao caminho.