Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Testes Unitários para página de contato.py #67

Closed
davi-aguiar-vieira opened this issue Aug 15, 2024 · 0 comments · Fixed by #117
Closed

Testes Unitários para página de contato.py #67

davi-aguiar-vieira opened this issue Aug 15, 2024 · 0 comments · Fixed by #117
Assignees
Labels
enhancement New feature or request

Comments

@davi-aguiar-vieira
Copy link
Collaborator

Testes Unitários para página de contato.py

Descrição

Garanta que o formulário de contato criado com Streamlit esteja funcionando corretamente e que todas as funções críticas estejam cobertas por testes unitários. Solicito que sejam implementados testes para validar o comportamento esperado das seguintes funções e funcionalidades:

Funções a serem testadas:

  1. Função is_valid_email(email)

    • Verificar se a função retorna True para e-mails válidos.
    • Verificar se a função retorna False para e-mails inválidos.
  2. Função send_formspree(name, email, subject, message)

    • Simular o envio de uma mensagem para o endpoint do Formspree e verificar se a função retorna True para um envio bem-sucedido.
    • Simular falhas no envio (usando requests mockado) e verificar se a função retorna False nesses casos.
  3. Função is_name_filled(name)

    • Verificar se a função retorna True quando o nome é preenchido.
    • Verificar se a função retorna False quando o nome está vazio.
  4. Função is_message_filled(message)

    • Verificar se a função retorna True quando a mensagem é preenchida.
    • Verificar se a função retorna False quando a mensagem está vazia.

Critérios de Aceitação

  • Todos os testes devem passar sem erros.
  • Cobertura de testes deve ser suficiente para garantir que o código está protegido contra entradas inválidas e comportamentos inesperados.

Dica:

  • Instale os pacotes de teste pytest e coverage com pip install pytest coverage.
  • Rode o pytest com o comando pytest ou python -m pytest se a instalação não estiver incluida no PATH.
  • Rode o coverage com coverage run -m pytest e depois coverage report para ver a cobertura dos testes.
  • Na pasta tests crie outra pasta chamada test_contato e dentro dessa pasta pode fazer quantos arquivos forem necessários para teste.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Development

Successfully merging a pull request may close this issue.

2 participants