Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Bug] Pytest dando erro

Ao tentar fazer a atividade o pytest da o seguinte erro:

Microsoft Windows [versão 10.0.22621.963]
(c) Microsoft Corporation. Todos os direitos reservados.
(venv) C:\Users\Joube\Documents\Alura\Formações\Python e orientação a objetos\Python e TDD explorando testes u
nitários>pytest
============================================ test session starts ============================================
platform win32 -- Python 3.11.0, pytest-7.2.0, pluggy-1.0.0
rootdir: C:\Users\Joube\Documents\Alura\Formações\Python e orientação a objetos\Python e TDD explorando testes unitários
collected 0 items / 1 error
================================================== ERRORS ===================================================
__________________________________ ERROR collecting tests/test_bytebank.py __________________________________
ImportError while importing test module 'C:\Users\Joube\Documents\Alura\Formações\Python e orientação a objetos\Python e TDD explorando testes unitários\tests\test_bytebank.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
C:\Users\Joube\AppData\Local\Programs\Python\Python311\Lib\importlib\__init__.py:126: in import_module        
    return _bootstrap._gcd_import(name[level:], package, level)
tests\test_bytebank.py:1: in <module>
    from bytebank import Funcionario
E   ModuleNotFoundError: No module named 'bytebank'
========================================== short test summary info ========================================== 
ERROR tests/test_bytebank.py
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Interrupted: 1 error during collection !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 
============================================= 1 error in 0.20s ============================================== 

Como resolver?

1 resposta
solução!

Olá Carlos, tudo bem com você?

O erro ModuleNotFoundError, está informando que o módulo (arquivo) bytebank.py não foi encontrado. Peço que verifique se o arquivo bytebank.py está dentro de uma subpasta do projeto. Na aula o arquivo bytebank.py está dentro da subpasta codigo.

Caso o arquivo bytebank.py esteja dentro de uma subpasta será necessário modificarmos sua importação no arquivo tests/test_bytebank.py.

Abra o arquivo tests/test_bytebank.py e substitua a seguinte linha: from bytebank import Funcionario pelo código apresentado abaixo, adicionando o nome da subpasta em que o arquivo bytebank.py foi criado.

from <nome_da_subpasta>.bytebank import Funcionario

Exemplo de importação conforme a estrutura de pastas usadas na aula.

from codigo.bytebank import Funcionario

Após realizar a mudança na importação, salve o arquivo test_bytebank.py e execute o comando abaixo no terminal aberto na pasta do projeto para iniciar os testes.

pytest

Caso o erro permaneça, peço que envie uma print da tela completa no momento do erro, de forma que exiba a estrutura das pastas e arquivos do projeto.

Lembre-se que pode contar sempre com o fórum Alura, seja para tirar suas dúvidas e para compartilhar seu desenvolvimento.

Fico à disposição.

Abraços e bons estudos.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!