unb-mds / 2023-2-Squad02-Desmatazonia

https://desmatazonia.netlify.app/
https://unb-mds.github.io/2023-2-Squad02-Desmatazonia/
MIT License
3 stars 1 forks source link

Estudo sobre a importância e o funcionamento dos testes #56

Closed SkywalkerSupreme closed 11 months ago

SkywalkerSupreme commented 11 months ago

Esta issue tem como objetivo aprofundar o entendimento sobre os testes no contexto do projeto.

SkywalkerSupreme commented 11 months ago

Investigar e documentar a importância dos testes no contexto de projetos de desenvolvimento de software.

No universo do desenvolvimento de software, a prática de realizar testes é vital para garantir a qualidade, robustez e confiabilidade dos sistemas. Por isso o nosso projeto necessita ter um investimento maior na área de testes.

Motivos para se realizar testes:

  1. Identificação Precoce de Bugs: Os testes possibilitam a identificação precoce de bugs e falhas no código-fonte.
  2. Melhoria da Qualidade do Código: Testes bem elaborados pode nos ajudar a manter as boas práticas de programação a medida em que desenvolvermos o extrator e o front. Consequentemente, é facilitada a compreensão e a manutenção do nosso trabalho.
  3. Garantia de Funcionamento Esperado: Com os testes, é possível verificar se os requisitos estão sendo atendidos e se as funcionalidades estão operando corretamente.
  4. Manutenibilidade e Evolução do Software: Eles fornecem uma rede de segurança ao realizar alterações ou adições no código, o que garante que novos desenvolvimentos não introduzam regressões ou quebras nas funcionalidades existentes.

Influência no nosso trabalho:

A aplicação de testes desempenhará um papel crucial no desenvolvimento do nosso projeto de extração de dados ambientais na Amazônia. Isso porque, ao implementar uma estratégia abrangente de testes, podemos assegurar a confiabilidade e a precisão das informações extraídas, além de garantirmos que o nosso site está funcionando corretamente.

Referências Bibliográficas:

SkywalkerSupreme commented 11 months ago

Identificar e descrever os diferentes tipos de testes que podem ser aplicados no desenvolvimento do site extrator

Testes Unitários

Os testes unitários são essenciais para avaliar individualmente unidades de código, como funções ou métodos. No contexto do nosso site extrator, isso implica verificar se cada componente isolado, como os algoritmos de extração de dados, funciona conforme o esperado.

Testes de Integração

Os testes de integração visam verificar se os diferentes módulos do sistema interagem corretamente. No caso do nosso trabalho, seria crucial testar a integração entre os componentes de extração, armazenamento de dados e interface do usuário.

Testes de Aceitação do Usuário

Para validar a usabilidade e a experiência do usuário, os testes de aceitação do usuário são cruciais. Eles garantem que a interface do site extrator seja intuitiva e que atenda às expectativas dos usuários finais.

Referências Bibliográficas:

SkywalkerSupreme commented 11 months ago

Criar um guia detalhado sobre como implementar os testes.

Testes Unitários

  1. Identificação de Unidades de Código: Analisar o código-fonte do site extrator e identifique as unidades de código, como funções ou métodos, especialmente os algoritmos de extração de dados.
  2. Definição de Cenários de Teste: Elaborar cenários de teste específicos para cada unidade de código identificada, abrangendo diferentes condições de entrada e saída. É necessário utlizar casos extremos.
  3. Implementação dos Testes Unitários: Certificar de que cada teste avalia corretamente o comportamento esperado das unidades de código, validando a precisão da extração de dados.

Testes de Integração

  1. Identificação de Módulos do Sistema: Identificar os principais módulos do sistema, incluindo extração, armazenamento de dados e interface do usuário.
  2. Definição de Cenários de Integração: Elaborar cenários de teste que simulem a interação entre os diferentes módulos.
  3. Implementação dos Testes de Integração: Verificar se a comunicação eficiente entre os componentes, verificando se a extração, armazenamento e apresentação dos dados estão alinhados.

Testes de Aceitação do Usuário

  1. Identificação de Funcionalidades Críticas: Identificar as principais funcionalidades do site extrator que afetam diretamente a experiência do usuário,
  2. Criação de Cenários de Uso Real: Elaborar cenários de teste que reproduzam situações reais de uso, considerando as necessidades dos usuários finais que buscam informações sobre desmatamento na região.

Referências Bibliográficas

SkywalkerSupreme commented 11 months ago

Pesquisar sobre a automatização dos teste

Porque automatizar:

A automação permite a execução rápida e repetitiva dos testes, reduzindo o tempo necessário para validação e garantindo que todas as partes do sistema sejam testadas de maneira abrangente. Além disso, a automação contribui para a identificação imediata de regressões.

Automatizando os testes:

Referências Bibliográficas:

SkywalkerSupreme commented 11 months ago

Caso alguém tenha alguma dúvida, pode vir falar comigo! :D