Executando o unittest com a estrutura típica de diretórios de teste

A estrutura de diretórios muito comum, mesmo para um simples módulo Python, parece ser separar os testes unitários em seus própriostest diretório:

new_project/
    antigravity/
        antigravity.py
    test/
        test_antigravity.py
    setup.py
    etc.

por exemplo, veja issoHowto do projeto Python.

Minha pergunta é simplesmenteQual é a maneira usual de executar os testes? Eu suspeito que isso é óbvio para todos, exceto eu, mas você não pode simplesmente correrpython test_antigravity.py do diretório de teste como seuimport antigravity falhará porque o módulo não está no caminho.

Eu sei que eu poderia modificar o PYTHONPATH e outros truques relacionados ao caminho de busca, mas não posso acreditar que seja a maneira mais simples - tudo bem se você for o desenvolvedor, mas não realista esperar que seus usuários usem se quiserem apenas verificar se os testes são passagem.

A outra alternativa é apenas copiar o arquivo de teste para o outro diretório, mas parece um pouco estúpido e perde o ponto de tê-los em um diretório separado para começar.

Então, se você tivesse acabado de baixar a fonte para o meu novo projeto, como você executaria os testes de unidade? Eu prefiro uma resposta que me permita dizer aos meus usuários: "Para executar os testes unitários do X."

questionAnswers(19)

yourAnswerToTheQuestion