1
resposta

Teste não funciona

Boa tarde,

Estou usando Ubuntu 20.10, Python 3.8 e Pycharm 2020.3 e o teste não funciona.

Ao executar no Pycharm tenho o retorno:

/usr/bin/python3.8 /home/lucas/PycharmProjects/testes-python-projeto-inicial/src/leilao/test_dominio.py

Process finished with exit code 0

Ao executar direto no terminal:

$ python3 -m unittest /home/lucas/PycharmProjects/testes-python-projeto-inicial/src/leilao/test_dominio.py 
E
======================================================================
ERROR: test_dominio (unittest.loader._FailedTest)
----------------------------------------------------------------------
ImportError: Failed to import test module: test_dominio
Traceback (most recent call last):
  File "/usr/lib/python3.8/unittest/loader.py", line 154, in loadTestsFromName
    module = __import__(module_name)
  File "/home/lucas/PycharmProjects/testes-python-projeto-inicial/src/leilao/test_dominio.py", line 2, in <module>
    from src.leilao.dominio import Usuario, Leilao, Lance, Avaliador
ModuleNotFoundError: No module named 'src'


----------------------------------------------------------------------
Ran 1 test in 0.000s

FAILED (errors=1)

Segue o codigo:

from unittest import TestCase
from src.leilao.dominio import Usuario, Leilao, Lance, Avaliador

class TestAvaliador(TestCase):
    def test_avalia(self):
        gui = Usuario('gui')
        yuri = Usuario('yuri')

        lance_do_yuri = Lance(yuri, 100.00)
        lance_do_gui = Lance(gui, 150.00)

        leilao = Leilao('Celular')

        leilao.lances.append(lance_do_yuri)
        leilao.lances.append(lance_do_gui)

        avaliador = Avaliador()
        avaliador.avalia(leilao)

        menor_valor_esperado = 100.0
        maior_valor_esperado = 150.0

        self.assertEqual(menor_valor_esperado, avaliador.menor_lance)
        self.assertEqual(maior_valor_esperado, avaliador.maior_lance)
1 resposta

Oii Lucas, como você está? Espero que esteja bem ^-^

Sinto muito pela demora em obter um retorno.

Tente o seguinte: abra o terminal, na raiz do diretório (imagem abaixo) e digite: "python -m unittest src.leilao.test_dominio" :

image

Quanto ao PyCharm, vá em File -> Settings -> Tools -> Python Integrated Tools -> Testing -> Default test runner e marque Unittest -> Apply -> Ok:

image

Após isso, clique em seu arquivo Python referente ao teste com o botão direito e clique em "Run unittests in test_dominio":

image

Qualquer dúvida estou por aqui, tá bom? A gente vai conversando.

Grande abraço!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software