Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 Com o sistema codificado, ou seja, com o condigo fonte, podemos criar os testes unitários. Com as “unidades” testadas, podemos executar os testes de integração, ou seja, testar um conjunto de unidades e verificar se juntas elas estão funcionando de maneira que deveriam e foram arquitetadas. Com o conjunto de unidades funcionando, executamos o teste de validação com o intuito de verificar se os requisitos previamente definidos estão sendo satisfeitos no sistema desenvolvido. Por fim, executamos testes no sistema como um todo, a fim de verificar se o software e todos os outros elementos do sistema funcionam como esperado. Teste Unitário Os testes unitários, são uma forma de gerenciar de maneira mais fácil os elementos de teste, uma vez que a atenção é focada inicialmente em unidades menores do programa. Testes unitários facilitam a tarefa de depuração, uma vez que, quando um defeito for encontrado, o escopo de depuração é menor. Quando vamos criar testes unitários, precisamos criar pseudocontroladores, também conhecidos como “Drivers”, e pseudocontrolados, também conhecidos como “Stubs”. O driver cumpre o papel da unidade que “chama” a unidade a ser testada. Já o stub faz o papel de outras unidades que são “chamadas” pela nossa unidade. Concluímos que o teste unitário está presente na parte de Conclusão: programação (codificação), seu principal objetivo é dividir em unidades a fim de diminuir e facilitar a depuração, em busca de erros, defeitos e bugs. Teste de Integração O teste de integração é uma maneira sistemática de construir a arquitetura do software e identificar defeitos. Myers (MYERS, 2004) apresenta duas formas de teste de integração. Uma forma é a conhecida como integração big-bang, que é testar os módulos/unidades de forma independente e depois combinar todas as 2 unidades, compor o programa e então testar a integração entre eles. Outra forma é a integração incremental, que combina um módulo previamente testado de forma unitária com um conjunto de módulos no qual o teste de integração já foi feito. Após testar esse novo conjunto, um outro módulo é agregado e assim por diante, até compor o sistema por completo. Teste de regressão é a reexecução de testes que já foram executados anteriormente com o objetivo de garantir que as novas integrações não tenham efeitos indesejados – ou seja, defeitos. De forma mais genérica, Pressman (PRESSMAN, 2006), explica que a cada nova integração, obviamente o sistema é modificado e dessa forma novos fluxos de dados surgem, novas opções de entrada e saída de dados são inseridas e defeitos podem ser alcançados em unidades que antes funcionavam da maneira esperada. Podemos entender que esse problema também acontece quando há manutenção do sistema. O propósito do teste de integração é verificar os requisitos Conclusão: funcionais, de desempenho e de confiabilidade na modelagem do sistema. Com ele é possível descobrir erros de interface entre os componentes do sistema. Teste de Validação O teste de validação tem como foco as ações dos usuários e as saídas dos sistemas conhecidas pelo usuário. Outra boa definição é a que teste de validação determina se o sistema está em conformidade com os requisitos definidos, se contempla as funcionalidades para o qual foi desenvolvido e satisfaz os objetivos e necessidades do usuário. No teste de validação, os casos de teste são definidos com base na especificação dos requisitos funcionais. Outro excelente artefato para direcionar os testes de validação é o diagrama de Caso de Uso da UML (Unified Modeling Language), já que esse retrata cenários de uso do sistema, e até mesmo o Diagrama de Atividades, quando estiverem disponíveis. Além de garantir que o sistema seja exercitado de acordo com os requisitos funcionais e testar se o sistema está de acordo com esses requisitos, no teste de validação é o momento de testar se o 3 comportamento, o desempenho, a interface e a usabilidade do sistema estão de acordo com o esperado. Nesse momento, também é uma excelente oportunidade para verificarmos se a documentação do sistema está adequada. Ao executar testes de validação, defeitos de implementação podem ser encontrados, mas são menos comuns, principalmente quando testes unitários e de integração foram executados. Os defeitos mais comuns nessa fase são desvios dos requisitos especificados e melhorias sugeridas pelo testador, que está usando o sistema no papel do usuário e devido sua experiência com software pode identificar melhores maneiras de uso de determinada funcionalidade. Quando um desvio do requisito é encontrado, é importante identificar se o requisito foi especificado de maneira errada ou insuficiente – se o requisito estiver errado, é importante que seja atualizado; se estiver insuficiente, é preciso discutir para saber se o desvio identificado faz sentido e deve ser modificado no software ou se a maneira como foi implementada é a melhor forma para o usuário e então, o requisito deve ser atualizado para que a documentação fique coerente. O Teste de validação está voltado para as entradas e saídas do Conclusão: sistema, como também, para o usuário que ira utiliza-lo. O teste de validação é feito para assegurar que todos os requisitos estipulados no começo, estejam de acordo e funcionando perfeitamente. Sem dúvidas é o teste que mais merece destaque e atenção. Pois nele podemos nos assegurar de que todas as funcionalidades estão sendo executadas de maneira correta e satisfatória. Teste de Sistema Testes de Sistemas é um conjunto de testes executados com o objetivo de exercitar todos os componentes que fazem parte do sistema informatizado, ou seja, um sistema que depende de um software. Apesar de cada teste ter um objetivo específico, o objetivo comum é identificar, caso exista, defeitos ao exercitar todos os componentes do sistema em conjunto com o software, que teve suas unidades devidamente testadas, integradas e seus requisitos validados. 4 O teste de sistema, nada mais é que uma varredura completa Conclusão: de tudo o que já fora feito.
Compartilhar