Você está na página 1de 2

RESENHA TEMTICA: A IMPORTNCIA DO TESTE DE SOFTWARE

JOO CRUZ DA SILVA JUNIOR

FATEC Faculdade de Tecnologia Dom Amaury Castanho


Curso de Graduao em Gesto da Tecnologia da Informao
Itu (SP)
joaocruzjunior@ig.com.br

A importncia do Teste de Software

O que vem a ser teste de software? Ele oferece contribuies no momento do desenvolvimento de
softwares? Teste de software a execuo do software de maneira controlada para avaliar se ele se comporta, ou
no, conforme o especificado. Visa a verificar e relatar o estado do software, a qualquer momento, em termos
significativos a todos que precisam desta informao.
A escolha deste tema se deu em funo do mesmo ser apresentado como requisito de avaliao da
disciplina Engenharia de Software, do curso de Gesto da Tecnologia da Informao sob a orientao da Prof.
Lilian Simo. Tal tema pode ser verificado, conforme sugesto do plano de ensino da disciplina, nos trs artigos
a seguir:
Artigo 1: Introduo a Teste de Software, do autor Arilo Cludio Dias Neto;
Artigo 2: A Importncia dos Testes Automatizados: Controle gil, rpido e confivel de
qualidade, dos autores Paulo Cheque Bernardo e Fabio Kon;
Artigo 3: Caracterizao do Estado da Prtica das Atividades de Teste em um Cenrio de
Desenvolvimento de Software Brasileiro, dos autores Arilo Claudio Dias Neto, Ana Cndida
Cruz Natali, Ana Regina Rocha e Guilherme Horta Travassos.
No artigo 1 so apresentados alguns dos principais conceitos relacionados s atividades de teste de
software, as principais tcnicas e critrios de teste que podem ser utilizados para verificao ou validao de um
produto. Durante o processo de desenvolvimento de um software, em meio grande quantidade de linhas de
cdigos, algo pode passar despercebido pela equipe de programadores e vir a causar problemas no momento de
uso do software pelo usurio final. Diante dessa situao, o teste de software tem a funo de revelar as falhas no
produto, impedindo que inconvenincias ocorram. A atividade de teste composta por alguns elementos
essenciais que auxiliam na formalizao desta atividade, esses elementos so os seguintes: Caso de Teste (o que
precisa ser testado), Procedimento de Teste (como o teste ser realizado) e Critrio de Teste (meios
proporcionam identificar formas de aumentar as possibilidades de provocar falhas no produto). O teste de
software pode ser dividido em nveis, sendo eles: Teste de Unidade (explora a menor unidade do projeto
procurando falhas), Teste de Integrao (explora falhas na integrao dos mdulos do software), Teste de
Sistema (busca as falhas por meio da utilizao do software em si), Teste de Aceitao (verificao, pelos
usurios, se o software atende s suas necessidades) e Teste de Regresso (consiste em aplicar, novamente, todos
os testes realizados a cada nova verso do software que for concebida). As tcnicas de teste de software
existentes so: tcnica funcional e estrutural. A tcnica estrutural avalia o comportamento interno do componente
de software, j na tcnica funcional no se considera o comportamento interno do software, se analisa somente
as entradas e os seus resultados.
O artigo 2 sinaliza que os sistemas de software devem no s fazer corretamente o que o cliente precisa,
mas tambm faz-lo de forma segura, eficiente e escalvel e serem flexveis, de fcil manuteno e evoluo.
Excluindo raras excees, na indstria de software brasileira, estas caractersticas so asseguradas atravs de
testes manuais do sistema aps o trmino de mdulos especficos ou at mesmo do sistema inteiro. Essa
abordagem manual leva ocorrncia de muitos problemas e deve ser evitada. Com base nas premissas dos
Mtodos geis de Desenvolvimento de Software e em prticas recomendadas pela Programao eXtrema (XP),
o autor apresenta a prtica de Testes Automatizados de softwares como sendo um requisito imprescindvel para a
qualidade final do produto. O Teste Automatizado fcil e gil de executar, podendo ser aplicado em qualquer
fase de desenvolvimento do software. Entretanto, o cdigo do teste automatizado escrito programaticamente,
assim como o cdigo do software em si, desse modo o teste automatizado tambm pode conter erros; dessa
forma imprescindvel que o cdigo do teste seja o mais simples possvel. Evitando testes longos, cdigo repleto
de condies e testes responsveis por muitas verificaes. A automao dos testes oferece segurana para que a
equipe de desenvolvedores realizem alteraes no cdigo, seja por manuteno, refatorao ou at mesmo para
adio de novas funcionalidades no software. Alm disso, automatizar o processo de verificao de falhas por
meio de programas possibilita a criao de testes mais elaborados e complexos, que podero ser repetidos,
identicamente, inmeras vezes e a qualquer momento com uma demanda reduzida de tempo se comparado com
os testes manuais.
O artigo 3 aponta que existem poucas evidncias relatadas da efetividade das prticas de teste de
software sugeridas pela literatura tcnica na indstria. Neste contexto o artigo apresenta um levantamento sobre
quais prticas de teste so importantes e esto sendo, realmente, adotadas e postas em prtica pelas micro,
pequenas e grandes empresas que desenvolvem softwares. O levantamento avaliou a prtica do teste do software
sob dois aspectos: a aplicabilidade dessas prticas nas organizaes de software, e o grau de importncia dessas
prticas na viso dos profissionais dessas organizaes. A concluso foi a que uma grande quantidade de prticas
de teste de software foram consideradas no importantes e no-aplicadas, independentemente do tamanho das
organizaes. Entretanto, as organizaes esto aplicando prticas de teste em seus projetos, porm com
limitaes. Uma maior preocupao dada organizao dos testes, enquanto que as atividades de
planejamento, controle, medio e anlise so pouco aplicadas na indstria de software. Verificou-se tambm
que ferramentas de apoio aos testes (relacionadas gerncia ou automao dos testes) no esto sendo aplicadas
organizaes. Existem tambm diferenas da adoo de algumas prticas de teste de softwares entre as empresas
de micro/pequeno porte e as empresas de grande porte, onde s grandes empresas aplicam mais prticas de teste
em seus projetos, principalmente relacionadas organizao dos testes. Por outro lado, micros e pequenas
empresas possuem um maior interesse em implantar ferramentas que apoiam a automao de tarefas
relacionadas ao planejamento dos testes, possivelmente como forma de suprir a sua carncia em recursos
humanos.
Os trs artigos discorrem sobre a relevncia que o teste de software possui para a qualidade do produto
final. A concorrncia no mercado de software vem crescendo em todo o mundo e para se manterem competitivas
nesse mercado as empresas desenvolvedoras de softwares precisam oferecer solues que atendam s
necessidades de seus clientes um baixo custo. Para tal, de grande importncia que essas empresas utilizem
ferramentas que permitam reduzir seus gastos com os processos de desenvolvimento para assim terem maiores
margens para negociarem seus produtos e/ou prestaes de servios. Os autores demonstram de maneira concreta
que os Testes de Softwares so importantes no apoio da conteno de gastos e no tempo perdido no
desenvolvimento de software; seja para grandes, medias ou pequenas empresas desenvolvedoras. Os artigos
proporcionam uma excelente viso sobre a prtica do teste de software, demonstrando suas principais
caractersticas e fundamentando suas possibilidades de uso. Durante o processo de desenvolvimento de um
software, em meio grande quantidade de linhas de cdigos e alteraes que se faam necessrias, algo pode
passar despercebido pela equipe de programadores e vir a causar problemas no momento de uso do software pelo
usurio final. Diante dessa situao, a automatizao do teste de software pode uma boa soluo, pois alm
oferecer maior segurana para a equipe de desenvolvedores, possibilita tambm a criao de testes mais
elaborados e complexos, que podero ser repetidos, identicamente, inmeras vezes e a qualquer momento com
uma demanda reduzida de tempo se comparado com os testes manuais.
O tema abordado de relevante importncia para estudantes, profissionais e empresrios da rea de TI
que no conhecem a ferramenta apresentada e visam melhorar a qualidade do seu produto e reduzir custos com
retrabalhos ocasionados por falhas no momento de desenvolvimento de seus softwares.

Referncias
Bernardo, P. C., Kon, F. A Importncia dos Testes Automatizados: Controle gil, rpido e confivel de
qualidade. Engenharia de Software Magazine, 1(3), pp. 54-57. 2008.
Neto, A. C. D. Introduo a Teste de Software. Engenharia de Software Magazine, Ano 1 - 1 Edio, pp. 54-
59. 2007.
Neto, A. C. D., Natali, A. C. C., Rocha, A. R., Travassos, G. H. (2006). Caracterizao do estado da Prtica das
Atividades de Teste em um Cenrio de Desenvolvimento de Software Brasileiro, In: V Simpsio Brasileiro de
Qualidade de Software (SBQS).

Você também pode gostar