Turbogears2 e py.test
-
26-09-2019 - |
Pergunta
Estou mudando nosso ambiente de teste de Nose para py.test para testar um aplicativo da web Turbogears2.
Atualmente, quando o Nose é executado, ele coleta informações de um arquivo de configuração de teste (test.ini) que contém todas as variáveis de teste que a aplicação precisa.E parece fazê-lo de forma automática (estou simplesmente executando nosetests
e tudo é carregado)
O problema reside na incapacidade de py.test ser apontado para o arquivo de configuração INI correto para que eu possa carregar o aplicativo com as variáveis que preciso.
Atualmente, o ponto de falha é pylons.app_globals, que simplesmente não existe ao executar py.test (portanto, tudo falha).
Examinei a documentação do Turbogears, mas eles mencionam apenas Nose/nosetests e nada mais.
Existe uma maneira de liderar o aplicativo com as variáveis de teste nas quais confio py.test ?
Solução
No que diz respeito à parte do py.test, você pode implementar algo assim:
# content of conftest.py
def pytest_sessionstart():
# setup resources before any test is executed
def pytest_sessionfinish():
# teardown resources after the last test has executed
Atualmente, esse arquivo conftest.py deve estar melhor no diretório raiz do checkout, pois o py-1.3.4 só executará esse gancho se o vir com antecedência suficiente.
Também dei uma olhada no TurboGears, mas não encontrei de forma fácil o mecanismo como/qual test.ini é realmente carregado.Posso atualizar a resposta se alguém puder fornecer essas informações.
HTH.Holger