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

Teste sem retorno

Olá pessoal, boa noite!

Ao rodar o código da aula o meu teste não apresentou retorno, somente a mensagem:

Process finished with exit code 0

Segue meu código abaixo:

import sys
from unittest import TestCase
#aba criada quando crio um teste ao fazer ctrl+shift+T na classe Avaliador
from src.leilao.dominio import Usuario, Lance, Leilao, Avaliador

class TestAvaliador(TestCase): #herda todos os metodos de testcase
    def test_avalia(self):
        gui = Usuario("Gui")
        yuri = Usuario("yuri")

        lance_do_yuri = Lance(yuri, 100.0)
        lance_do_gui = Lance(gui, 150.0)

        leilao = Leilao("celular")

        leilao.lances.append(lance_do_gui)

        leilao.lances.append(lance_do_yuri)

        avaliador=Avaliador() #cria um objeto intanciado numa classe, com o objetivo de poder usar os métodos nela instanciados
        avaliador.avalia(leilao)

        menor_valor_esperado=100
        maior_valor_esperado=150

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

Já alterei a maneira de fazer o import, colocando o caminha src.leilao.dominio mas ainda assim não funcionou. O que pode estar acontecendo?

Grade abraço!

1 resposta
solução!

Olá Vitor.

Testei o seu código e ele está funcionando corretamente.

Acredito que o problema esteja em como está executando o teste. Poderia me informar se está utilizando o PyCharm ?

Se estiver, você pode clicar com o botão direto do mouse no arquivo de teste (teste_avaliador.py) e clicar na opção Run 'pytest in teste_avaliador.py.

Obtendo um resultado semelhante a esse:

============================= test session starts =============================
platform win32 -- Python 3.8.2, pytest-5.4.1, py-1.8.1, pluggy-0.13.1 -- C:\Users\igor_\AppData\Local\Programs\Python\Python38-32\python.exe
cachedir: .pytest_cache
rootdir: C:\Users\igor_\Desktop\testes-python-aula-01\testes-python-aula-01\src\leilao
collecting ... collected 1 item

test_avaliador.py::TestAvaliador::test_avalia PASSED                     [100%]

============================== 1 passed in 0.03s ==============================

Process finished with exit code 0

Existem também a opção apresentada na atividade 8, onde o instrutor ensina em como rodar via terminal.

python -m unittest src/leilao/test_avaliador.py

Obtendo esse resultado:

C:\Users\igor_\Desktop\testes-python-aula-01\testes-python-aula-01>python -m unittest src/leilao/test_avaliador.py
.
----------------------------------------------------------------------
Ran 1 test in 0.000s

OK

C:\Users\igor_\Desktop\testes-python-aula-01\testes-python-aula-01>

Espero ter ajudado, qualquer duvida não hesite em perguntar.

Bons Estudos.