TESTE DE SOFTWARE
Por: siltop10 • 1/5/2018 • Artigo • 2.358 Palavras (10 Páginas) • 173 Visualizações
Teste de Software
Thiago Henrique Passos1, Marco Antonio Albues Pires1
1Faculdade de Engenharia e Computação – Universidade de Cuiabá (UNIC) Avenida Beira Rio, bairro Jardim Europa, nº 3.100 - Cep: 78065-900 – Cuiabá - MT – Brasil
thiago_v@hotmail.com, prof.marcoantonio@terra.com.br
Abstract. To check and ensure the quality of software is necessary to make tests that are done to ensure that a number of flaws in the system is minimized.
In view of the digital evolution relate the main forms of testing and the benefits to be made throughout the creation process.
Resumo. Para verificar e garantir a qualidade do software é necessário efetuar testes que são feitos para certificar que um número de falhas no sistema seja minimizado.
Tendo em vista a evolução digital relatarei as principais formas de testes e os benefícios de serem feitos durante todo o processo de criação.
1. O que é Teste de Software?
São essenciais para o desenvolvimento do sistema, tendo em vista que será a partir dos testes que iremos encontrar os “bugs”, ou seja, os defeitos que se encontravam ocultos no software. Caracteriza por ser o espião do sistema, sua execução é efetuada para analisar e encontrar frustrações no código, ao ser identificado ele é depurado e efetua-se a reconstrução retirando a falha por ele encontrada.
“Os testes, mais do que meios de detecção e correção de erros, são indicadores de qualidade.” (Paula Filho, 2009).
É a partir dos testes que se garante a excelência do sistema, não será um sistema sem bug, pois isso é impossível, mas será um sistema com falhas corrigidas e reparadas garantindo dessa forma a sua qualificação em meio ao seu funcionamento. Caso ocorra um bug em meio ao seu funcionamento o reparo será mais rápido se já tiver sido identificada e reparada uma falha anterior, pois não precisaremos voltar ao seu inicio, apenas depurar a nova falha apresentada e corrigi-la.
Sendo assim os testes de software surgiram para auxiliar na criação de um sistema com menos falhas e mais qualidade, executando a analise e a depuração dos “bugs”.
2. A Importância do Teste de Software
Desde o principio da programação os testes eram efetuados de forma superficial, não havia um profissional na área de testes eram efetuados pelos programadores apenas para analisar os códigos. Com o aumento das falhas em softwares surgiram especialistas para testá-los minimizando grandes impactos em sua estrutura, aprofundando nas técnicas as quais os programadores não tinham o conhecimento ou ocultavam para adiantamento da entrega do software.
“Não obstante a probabilidade de falha de um sistema bem projetado ser pequena, uma falha não-detectada num sistema de monitoração ou controle computadorizado poderia resultar em enormes prejuízos econômicos ou, o que é pior, significativos danos ou perdas de vidas humanas.” Pressman (1995).
Quando um software não é bem projetado pode produzir falhas, onde todo o processo pode ser perdido, podendo ser reformulado a partir do teste das suas falhas, quando utilizados em segurança não podem falhar, pois resultaram em oportunidades para invasores roubarem informações confidenciais e privilegiadas, causando impacto negativo sobre o seu criador e a instituição que o utiliza, também terá o aumento de gastos devido a inadimplência ocorrida com o “bug”.
O processo de teste não é algo que gera um custo baixo, mas quando não efetuado pode gerar um custo bem maior, pois terá que ser projetado novamente para desenvolver-se sem bugs relativos. Devemos imaginar o seu custo como um beneficio, pois como exemplifica Molinari: “Um defeito descoberto no inicio (mais próximo a especificação) custa cerca de dez centavos de dólar. Quando é descoberto perto do release, custa 100$ ou mais.”(Molinari,1966)
Os testes de softwares são efetuados a partir de uma escala de sequências no seu funcionamento, gerando assim tabela do custo quando ocorre um “bug”:
[pic 1]
Figura 1. Custo dos “bugs”
Fonte: Molinari, 2006, pág.: 56.
2.1. Empresas
Atualmente no Brasil existem empresas que são referencias na área de teste de software, sendo elas a Iteste e a Sofist.
Iteste situada no Rio de Janeiro, é uma empresa de serviços e consultoria de TI especializada em Teste de Software, que atualmente participa do desenvolvimento da Norma ISO 29119, visando um melhoramento na área de teste de software, sendo ela a primeira empresa nacional a estar no nível 2 da Melhoria do Processo de Teste Brasileiro (MPT. Br).
Sofist localizada em Campinas – SP, é uma empresa especializada em teste e qualidade de software que foi fundada com a intenção de ser escolhida por todos, por sua pró-atividade, excelência e compromisso com os resultados. A empresa é resultado de um projeto para desenvolver um software realizado juntamente com a Receita Federal, Unicamp e o ITA.
Ambas utilizam – se do modelo “V”, ele consiste em verificação e validação onde cada etapa de desenvolvimento é testada segue o exemplo na figura.
[pic 2]
Figura 2. Representação do modelo V
Fonte: http://www.devmedia.com.br/imagens/engsoft/artigo7/image03.jpg, disponível em 20/04/2015
2.2. Por que Algumas Empresas não testam o Software?
Os processos de teste de software na visão de algumas empresas utilizam muito tempo do projeto de desenvolvimento do software, geram altos custos e quando surgem necessidades eles revisão e reparam os seus sistemas, para elas não existem o custo beneficio dos testes de software desde o principio, realmente para empresas de pequeno porte uma equipe de teste de software se torna muito caro, se o sistema for de pequena escala não se torna viável manter a equipe de teste.
2.3. Por que Testar?
Como descrito anteriormente as necessidades de testar são:
- Reduzir o risco de sistemas com “bugs” serem entregues ao usuário;
- Pelo custo ser menor quando o erro é descoberto na etapa inicial do projeto;
- Evitar perdas de grandes expressões econômicas ou de vidas humanas;
- Antes prevenir do que remediar.
3. Técnicas de teste de software
Dois elementos completamente distintos que se completam tornando ainda mais efetivo o teste de software. Como na matemática tiramos o teste real das operações, no software utilizarmos dos casos de teste para fazer essa analise, ou seja, usamos os casos de testes como meio para testar o software e através das linhas abertas verificar se há falhas ou não.
Para desenvolver um bom caso de teste é necessário planejar e elaborar todas as situações e caminhos possíveis para cada requerimento do sistema, tornando assim um sistema com mínimas possibilidades de bugs, pelo fato de a partir do caso de teste garantir que os requisitos levantados pelo caso serão resolvidos.
...