terça-feira, 20 de novembro de 2012
Teste de metodologias de software
O teste de software é uma parte integrante do ciclo de vida de desenvolvimento de software (SDLC). Testando um pedaço de código de forma eficaz e eficiente é igualmente importante, se não mais, para escrevê-lo. Então, o que é teste de software? Bem, para aqueles que são novos para testes de software e garantia de qualidade, aqui estão alguns fatos úteis.
O teste de software é nada, mas submetendo um pedaço de código para as condições de funcionamento de ambos, controladas e não controladas, em uma tentativa de observar a saída e examinar se ele está de acordo com certas condições pré-estabelecidas. Diferentes conjuntos de casos de teste e estratégias de ensaio são preparados, todos os quais têm por objectivo alcançar um objetivo comum - remoção de bugs e erros do código e fazer o software livre de erros e capaz de fornecer resultados precisos e ótima. Existem diferentes tipos de técnicas de teste de software e metodologias. Uma metodologia de teste de software é diferente de uma técnica de teste de software. Nós vamos dar uma olhada em algumas das metodologias de teste de software na parte final deste artigo.
Métodos de teste de software
Existem muitos tipos diferentes de métodos de ensaio e técnicas utilizadas como parte da metodologia de teste de software. Eu alistou alguns destes.
* Teste de caixa branca
* Teste de caixa preta
* Teste de caixa cinza
* O teste de unidade
* O teste de integração
* O teste de regressão
* O teste de usabilidade
* O teste de desempenho
* Teste de Escalabilidade
* Testes de estresse Software
* O teste de recuperação
* Segurança testes
* Conformidade testes
* Os ensaios de fumo
* O teste de compatibilidade
* Teste de sistema
* Alpha teste
* Beta testes
Os métodos de teste de software acima descrito pode ser implementado de dois modos - manualmente ou por automatização. Teste de software manual é feito por testadores de software humanos, que verificar manualmente a peça de teste de código, e relatório de erros nele. No caso de teste de software automatizado, o mesmo processo é executado por um computador por meio de software, tais como o teste automatizado WinRunner, LoadRunner, Director de teste, etc
Teste de metodologias de software
Estes são alguns dos métodos de teste usados:
* O modelo de Cachoeira
* V modelo
* Modelo espiral
* RUP
* Agile modelo
* RAD
Vamos dar uma olhada em cada uma dessas metodologias, um por um.
Modelo Cachoeira
O modelo em cascata adota uma abordagem de "cima para baixo", independentemente de ele está sendo usado para o desenvolvimento de software ou de testes. Os passos básicos envolvidos no método de teste de software são as seguintes: 1. Análise de requisitos
2. Projeto caso de teste
3. Implementação caso de teste
4. Testar, depurar e validar o código ou produto
5. Implantação e manutenção
Nesta metodologia, de passar para a próxima etapa somente depois de ter concluído a etapa atual. Não há espaço para saltar para trás ou para frente ou para realização de duas etapas simultaneamente. Além disso, o modelo segue uma abordagem não-iterativo. A principal vantagem desta metodologia é a sua abordagem simplista, sistemático e ortodoxo. No entanto, ele tem muitos problemas já que os bugs e erros no código não são descobertos e até menos que a fase de testes é atingido. Isso muitas vezes pode levar ao desperdício de tempo, dinheiro e outros recursos valiosos.
V Modelo
O modelo V recebe o seu nome do fato de que a representação gráfica das atividades de teste diferentes processos envolvidos nesta metodologia semelhante à letra 'V'. Os passos básicos envolvidos nesta metodologia é mais ou menos o mesmo que no modelo em cascata. No entanto, este modelo resulta tanto de um 'top-down', bem como 'bottom-up' abordagem (você pode visualizá-los formando 'V' da letra). A vantagem de usar esta metodologia é que, tanto o desenvolvimento e as atividades de teste caminham lado a lado. Por exemplo, como a equipe de desenvolvimento vai sobre suas atividades de análise de requisitos, a equipe de teste, simultaneamente, começa com as suas atividades de teste de aceitação. Seguindo esta abordagem, os atrasos são minimizados e utilização óptima dos recursos assegurados.
Modelo Espiral
Como o nome implica, o modelo espiral segue uma abordagem em que há um número de ciclos (ou espirais) de todos os passos sequenciais do modelo em cascata. Uma vez que o ciclo inicial fica concluída, uma análise e revisão do produto alcançado ou de saída é realizada. Se não estiver de acordo com os requisitos especificados ou padrões pretendidos, um segundo ciclo seguinte, e assim por diante. Esta metodologia segue uma abordagem iterativa e geralmente é adequado para grandes projetos que têm necessidades complexas e em constante mudança.
Rational Unified Process (RUP)
A metodologia RUP também é semelhante ao modelo de espiral no sentido de que todo o procedimento de teste é dividida em múltiplos ciclos ou processos. Cada ciclo é composto de quatro fases a saber; criação, elaboração, construção e transição. No final de cada ciclo, o produto / saída é analisado e um outro ciclo (composto pelos mesmos quatro fases) seguinte, se necessário. Hoje, você vai encontrar algumas organizações e empresas adotando uma versão ligeiramente modificada do RUP, que atende pelo nome, Enterprise Process Unificada (EUP).
Modelo Agile
Esta metodologia segue nem uma abordagem puramente seqüencial nem uma abordagem puramente iterativo. É uma combinação selectiva de ambas as abordagens para além de alguns métodos e novo desenvolvimento. Desenvolvimento rápido e incremental é um dos princípios fundamentais desta metodologia. O foco é a obtenção de resultados rápidos, práticos e visíveis, em vez de simplesmente seguir os processos teóricos. Interação com o cliente e participação contínua é uma parte integrante do processo de desenvolvimento.
Rapid Application Development (RAD)
O nome diz tudo. Neste caso, o método adopta uma abordagem de desenvolvimento rápido, utilizando o princípio da construção baseada em componentes. Depois de compreender as diferentes necessidades de determinado projeto, um protótipo rápido é preparado e é então comparado com o conjunto esperado de condições de saída e padrões. As mudanças necessárias e modificações são feitas na sequência de discussões conjuntas com a equipe do cliente ou de desenvolvimento (no contexto de teste de software). Embora esta abordagem tem a sua quota de vantagens, pode não ser adequado caso o projeto é grande, complexo e passa a ser extremamente dinâmico na natureza, em que os requisitos mudam constantemente.
Este foi um breve resumo de algumas metodologias de teste de software comumente utilizados. Com aplicações de tecnologia da informação cresce a cada dia, a importância dos testes de software adequado cresceu múltiplos....
Assinar:
Postar comentários (Atom)
Nenhum comentário:
Postar um comentário