Artigo Engenharia de Software 18 - Profissional da Área de Testes

Este artigo apresenta um conjunto de conhecimentos, habilidades e atitudes que o profissional de testes (ou o que quer iniciar sua carreira na área) deve possuir para que seja capaz de destacar-se na realização do seu trabalho.

Esse artigo faz parte da revista Engenharia de Software 18 edição especial. Clique aqui para ler todos os artigos desta edição



Validação, Verificação & Teste

Profissional da Área de Testes

Conhecimentos, habilidades e atitudes requeridas para a área de Testes de Software

 

De que trata o artigo:

Este artigo apresenta um conjunto de conhecimentos, habilidades e atitudes que o profissional de testes (ou o que quer iniciar sua carreira na área) deve possuir para que seja capaz de destacar-se na realização do seu trabalho. É apresentada também a estrutura de equipe mais comum encontrada na área de testes.

 

Para que serve:

O artigo visa orientar profissionais que desejam ingressar na área de Testes de Software, assim como orientar os profissionais que já atuam a complementarem suas competências. Serve também para empresas que desejam montar uma equipe de testes na medida certa para atender suas necessidades.

 

Em que situação o tema é útil:

Empresas e profissionais que possuem interesse em conhecer quais são as competências que um profissional e/ou equipe de testes de software devem possuir para obterem sucesso na função.

 

 

Quem participa de listas de discussão e fóruns na Internet sobre Testes de Software (ler Nota 1) sabe que é frequente o ingresso de novos integrantes solicitando orientações e conselhos para iniciarem a carreira na área. Normalmente, perguntam o que devem saber e fazer para poderem se especializar em testes e, consequentemente, encontrar um emprego com maior facilidade. Este artigo poderá ajudá-los no sentido de orientar sobre quais são as competências desejáveis para um profissional de testes. Dessa forma, o iniciante poderá utilizá-lo como guia para montar um plano de estudos e assim aumentar seu conhecimento. Poderá, também, aperfeiçoar-se nos aspectos comportamentais necessários, preparando-se para gerar bons resultados na sua empresa, ou mesmo para uma entrevista de emprego na área. Da mesma forma, uma empresa poderá se basear nas competências indicadas para realizar um processo de seleção para uma vaga específica de testes, ou montar uma equipe de testadores sob medida.

 

Nota 1. Teste de Software

Teste de software é o processo de execução de um produto para determinar se ele atingiu suas especificações e funcionou corretamente no ambiente para o qual foi projetado. O seu objetivo é revelar falhas em um produto, para que as causas dessas falhas sejam identificadas e possam ser corrigidas pela equipe de desenvolvimento antes da entrega final. Por conta dessa característica das atividades de teste, dizemos que sua natureza é “destrutiva”, e não “construtiva”, pois visa ao aumento da confiança de um produto através da exposição de seus problemas, porém antes de sua entrega ao usuário final.

 

O conceito de teste de software pode ser compreendido através de uma visão intuitiva ou mesmo de uma maneira formal. Existem atualmente várias definições para esse conceito. De uma forma simples, testar um software significa verificar através de uma execução controlada se o seu comportamento corre de acordo com o especificado. O objetivo principal desta tarefa é revelar o número máximo de falhas dispondo do mínimo de esforço, ou seja, mostrar aos que desenvolvem se os resultados estão ou não de acordo com os padrões estabelecidos.

 

Já o planejamento dos testes deve ocorrer em diferentes níveis e em paralelo ao desenvolvimento do software. Os principais níveis de teste de software são:

·Teste de Unidade: também conhecido como testes unitários. Tem por objetivo explorar a menor unidade do projeto, procurando provocar falhas ocasionadas por defeitos de lógica e de implementação em cada módulo, separadamente. O universo alvo desse tipo de teste são os métodos dos objetos ou mesmo pequenos trechos de código.

·Teste de Integração: visa provocar falhas associadas às interfaces entre os módulos quando esses são integrados para construir a estrutura do software que foi estabelecida na fase de projeto.

·Teste de Sistema: avalia o software em busca de falhas por meio da utilização do mesmo, como se fosse um usuário final. Dessa maneira, os testes são executados nos mesmos ambientes, com as mesmas condições e com os mesmos dados de entrada que um usuário utilizaria no seu dia-a-dia de manipulação do software. Verifica se o produto satisfaz seus requisitos.

·Teste de Aceitação: são realizados geralmente por um restrito grupo de usuários finais do sistema. Esses simulam operações de rotina do sistema de modo a verificar se seu comportamento está de acordo com o solicitado.

·Teste de Regressão: Teste de regressão não corresponde a um nível de teste, mas é uma estratégia importante para redução de “efeitos colaterais”. Consiste em se aplicar, a cada nova versão do software ou a cada ciclo, todos os testes que já foram aplicados nas versões ou ciclos de teste anteriores do sistema. Pode ser aplicado em qualquer nível de teste.

 

 

"
[...] continue lendo...
Ebook exclusivo
Dê um upgrade no início da sua jornada. Crie sua conta grátis e baixe o e-book

Artigos relacionados