Solucionado (ver solução)
Solucionado
(ver solução)
6
respostas

Test discovery failed

Estou usando o VSCode nas aulas de Python: TDD e sem mais nem menos eu recebo a seguinte msg: "Test discovery failed", agora eu não consigo rodar nenhum teste que minutos antes estavam rodando perfeitamente.

Sei que este assunto não é relacionado a nenhum conteúdo dos cursos de Python, mas é um erro que está persistindo por um certo tempo e não consigo descobrir o que está de errado.

Podem me ajudar?

6 respostas

Oi Luis, tudo bem?

Tente atualizar a sua versão do pytest:

pip install --upgrade pytest

Após isso, execute novamente os testes e veja se consegue fazer a execução.

Caso ainda não funcione, me responda se você utiliza alguma extensão para executar estes testes ou executa pelo terminal?

Fico no aguardo de sua resposta.

Olá Nadia, tudo bem e você?

Já atualizei meu pytest via terminal e mesmo assim meus testes ainda não são "descobertos".

Uso a extensão Python do próprio VSCode e executo os testes dentro do próprio VSCode.

Já procurei alguns fóruns no githut e no stackoverflow, mas pela minha falta de conhecimento em alguns aspectos tenho dificuldade de entender.

Abri um issue na pagina do VSCode no GitHub e estou aguardando uma resposta também.

Obrigado!

Luis, vou tentando te ajudar. Executei o código no VSCode e o erro de "Test discovery failed" ocorreu quando não havia um __init__.py dentro da pasta de testes. Você possui um arquivo __init__.py dentro da pasta de testes? Caso não, vale a tentativa de colocar este arquivo na pasta(este arquivo serve para indicar ao python que aquela pasta é um pacote).

Estou utilizando a extensão: Python Test Explorer for Visual Studio Code

Nádia, tenho um init.py dentro da pasta de testes.

Eu baixei a extensão Python Test Explorer porém a única coisa que mudou foi que agora ele deixa eu visualizar o output dos testes que no caso são apenas erros de discovery.

solução!

Pode ser algum problema com a extensão, Luis. Desinstale a extensão. Feche o VSCode e abra-o novamente. Instale novamente a extensão e faça o seguinte antes de executar:

  • Aperte ctrl + shift + p

  • Digite: Python: Configure Tests

  • Escolha pytest

  • E marque o "." como diretório

  • Depois disso, vá até o símbolo de Test no VSCode e tente executar.

E se mesmo assim o erro persistir, recomendo que para não ficar parado com a continuação do curso execute o teste pelo terminal do seu sistema operacional. Basta abrir o terminal na pasta do seu projeto e digitar:

pytest

Desinstalei todas as extensões Python do VSCode e reinstalei apenas a extensão Python oferecida pela Microsoft e todos os testes rodaram. Executei os testes no terminal antes e eles rodaram também. Realmente era um problema da extensão.

Muito obrigado Nádia!