1
resposta

Erro ao executar testes

Boa tarde.

Baixei o projeto, fiz as instalações de acordo com o vídeo, rodei o passo a passo tudo certinho. Porém na hora de executar os testes, aparece esse erro aqui:

Insira aqui a descrição dessa imagem para ajudar na acessibilidadeGostaria de entender qual o motivo de dar esse erro se o código que baixei é o que foi disponibilizado dentro do módulo?

1 resposta

Olá, Marcos. Tudo bem?

Essa implementação do método idade() aparece nas primeiras aulas do curso, porém ao longo dos vídeos o método é alterado devido a uma regra de negócio do projeto que não está sendo seguida.

Nessa primeira versão do método, ele só funcionaria caso a data de nascimento passada fosse somente o ano de nascimento, já que a conversão feita pelo int() só acontece caso a string passada represente um número. Como no seu código a string passada para o int() representa uma data, ocorre um erro.

Para corrigir isso, a implementação correta do método idade() seria:

    def idade(self):
        data_nascimento_quebrada = self._data_nascimento.split('/')
        ano_nascimento = data_nascimento_quebrada[-1]
        ano_atual = date.today().year
        return ano_atual - int(ano_nascimento)

Assim, o método obedece a regra de negócio sobre receber a data de nascimento e funciona sem erros, fazendo o tratamento da data e utilizando somente o valor do ano de nascimento para o cálculo da idade.

Basta substituir no seu código o método idade(), que os testes serão executados corretamente.

No início de cada aula (módulo) existe uma atividade chamada Projeto da aula anterior. Assim é possível baixar a versão mais atualizada do projeto até aquele momento do curso. Dessa forma você evita que erros aconteçam por seu projeto estar desatualizado.

Espero ter ajudado. Qualquer outra dúvida estou a disposição.

Abraços. Bons estudos!

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