top of page
Foto do escritorAndrea Bornal

Overview sobre Níveis e Tipos de Testes



Algumas pessoas acabam confundindo os termos NÍVEIS e TIPOS DE TESTES, gerando entendimento incorreto. Dentro de um projeto de TI, os significados dessas palavras precisam estar claros para todos os envolvidos, pois eles são extremamente importantes na definição do planejamento dos testes dentro desse contexto.


Segundo o Syllabus, Níveis de Testes (também conhecido como fases de testes) são grupos de atividades realizadas dentro de uma determinada fase do ciclo de desenvolvimento de Software com o objetivo de garantir a qualidade da entrega. Eles classificam os níveis da seguinte maneira:

  • Teste de componentes / Unitários: é realizado pelo Desenvolvedor, com o objetivo de verificar cada unidade que constitui o software, independentemente, para garantir que cada unidade foi desenvolvida conforme o especificado. Uma unidade por exemplo pode ser uma função, um método, etc. Antes, esse tipo de teste geralmente era realizado após desenvolver o código. Com o ágil, esses testes podem ser planejados antes de codificar, utilizando a prática de TDD (Desenvolvimento Orientado a Teste), e serem automatizados. Existem muitas ferramentas no mercado que possibilitam essa prática;

  • Teste de integração: tem como objetivo verificar se as unidades após integradas funcionam juntas. Assim como no teste de componentes, em alguns casos, o teste de regressão de integração automatizada garante que as alterações não impactarão nas interfaces, nos componentes ou sistemas existentes. Os testes de integração são compostos por dois níveis distintos, como:

· Teste de integração de componentes, que se concentra na interação de componentes e interfaces entre componentes integrados, esse tipo de teste normalmente é de responsabilidade dos desenvolvedores.

· Teste de integração de sistemas aplica-se nas interações e interfaces entre sistemas, pacotes e micro serviços, para esse tipo de teste os responsáveis são os analistas de testes.

  • Teste do sistema: geralmente executados por testadores independentes e tem como objetivo certificar que o software funciona da entrada dos dados até o resultado final conforme especificado, e assim garantir que as alterações realizadas não quebraram os recursos existentes. Defeitos na documentação (histórias de usuários, especificações etc.) podem levar a uma má interpretação sobre o comportamento do sistema, gerando assim falsos positivos e falsos negativos, reduzindo a eficácia na identificação de falhas e perda de tempo. Sendo assim, concluímos que o envolvimento precoce dos testadores no refinamento da documentação ajuda a limitar a ocorrência de tais situações.

  • Teste de aceite: é de responsabilidade do cliente (usuário final) e geralmente ele é realizado na entrega final, ou seja, antes da implantação em Produção. O foco desse nível de testes é garantir que o sistema está completo e funcional conforme esperado, respeitando os comportamentos funcionais e não-funcionais conforme especificado, garantindo a confiança de que os usuários podem interagir com o sistema sem dificuldades e sem bugs.

Já os tipos de testes, são classificados como Funcionais e Não Funcionais. Seguem alguns tipos existentes:

  • Usabilidade - avalia a experiência do usuário certificando que o software ou site possui a facilidade de uso, navegação intuitiva e manipulação pelo usuário.

  • Portabilidade - avalia o grau de portabilidade de um sistema/plataforma de um ambiente para outro e situações abrangendo hardware até o software. Consiste em avaliar algumas características como: Adaptabilidade, Coexistência e Capacidade de substituição.

  • Performance - avalia o desempenho de um sistema em termos de capacidade de resposta e estabilidade sob uma carga de trabalho específica.

  • Carga - avalia o comportamento do software com um limite de dados processados, medindo o desempenho e o tempo de resposta à medida que o volume de dados vai aumentando.

  • Instalação - avalia diferentes condições (interrupções no sistema, pouco espaço de memória etc.), se o programa novo ou um aplicativo consegue ser instalado ou se é impactado por essas limitações.

  • Segurança – avalia se há ameaças dos sistemas e vulnerabilidades, riscos, ataques de hacker e de vírus.


Existem diversos termos referentes a tipos de testes, é possível para profissionais da área se especializar em níveis e tipos específicos de testes.


O nível está relacionado a etapa do ciclo de desenvolvimento de software e o tipo relacionado as necessidades da demanda. Para a escolha do tipo, cabe ao analista de teste, durante o planejamento, propor para o time as opções que ele julgar necessárias e em conjunto decidirem o que deve ser aplicado.


Você se interessou por algum desses temas? Então vai fundo, se especializa e agregue valor para sua carreia e empresa.


Artigo escrito por Andrea Bornal


107 visualizações0 comentário

Posts recentes

Ver tudo

Comments


bottom of page