Teste convencional versus teste orientado a objeto
O teste de software é uma das etapas mais importantes no processo de desenvolvimento de software. Os testes de software garantem que o software desenvolvido atenda a todos os requisitos do cliente e seja executado sem erros. À medida que os paradigmas e as técnicas de desenvolvimento de software mudaram do desenvolvimento inicial de software em cascata para OOD / Agile e outros conceitos mais recentes, os testes também passaram dos testes convencionais (tradicionais) para o Teste Orientado a Objetos (OOT). Mas como o desenvolvimento em cascata ainda está em uso, os testes convencionais ainda são usados pelos testadores.
O que é teste convencional?
O processo de teste convencional ocorre principalmente quando o ciclo de vida em cascata é usado para o desenvolvimento de software nas organizações. O teste convencional sempre ocorre durante a fase de teste do ciclo de vida, que geralmente segue a fase de desenvolvimento e continua a fase de implementação. Durante esta fase de teste, principalmente três tipos de teste serão realizados. Os testes do sistema garantirão que os recursos do sistema atendam aos requisitos do cliente documentados no SRS (Software Requirements Specification), geralmente adotando uma abordagem de caixa preta. O teste de integração testa o design preliminar, adotando uma abordagem funcional e de decomposição. O teste de integração é baseado na estrutura do design, usando uma abordagem de cima para baixo ou de baixo para cima. Finalmente, os testes de unidade garantem que o projeto detalhado esteja correto.
O que é teste orientado a objetos?
O uso da análise e projeto Orientado a Objetos (OO), juntamente com o Agile e outras metodologias recentes de desenvolvimento de software, levam ao Teste Orientado a Objetos. O desenvolvimento de OO geralmente é focado no comportamento. O teste é realizado com ênfase na composição. Isso significa que o design é criado peça por peça e composto em conjunto para completar o sistema completo. Como a prototipagem rápida e alguma forma de abordagem incremental são usadas atualmente no desenvolvimento de OO, os três níveis de teste convencionais (sistema, integração e teste de unidade) não são claramente visíveis no projeto de OO (mas existem na maioria das vezes). Os testes do sistema (em testes OO) terão a mesma abordagem (caixa preta) dos testes convencionais e verificarão a especificação de requisitos (porque os requisitos precisam ser verificados independentemente do processo de desenvolvimento). O teste de unidade sob teste orientado a objeto é semelhante ao teste de unidade convencional, mas a diferença básica é a definição da unidade usada. As unidades atualmente aceitas usadas para teste de unidade são classes e métodos.
Qual é a diferença entre Teste Convencional e Teste Orientado a Objeto?
O teste convencional é a abordagem tradicional de teste, realizada principalmente quando o ciclo de vida das quedas de água é usado para o desenvolvimento, enquanto o teste orientado a objetos é usado quando a análise e o design orientados a objetos são usados para o desenvolvimento de software corporativo. O teste convencional se concentra mais na decomposição e nas abordagens funcionais, em oposição ao teste orientado a objetos, que usa composição. Os três níveis de teste (sistema, integração, unidade) usados nos testes convencionais não são claramente definidos quando se trata de testes orientados a objetos. A principal razão para isso é que o desenvolvimento de OO usa abordagem incremental, enquanto o desenvolvimento tradicional segue uma abordagem seqüencial. Em termos de teste de unidade, o teste orientado a objetos analisa unidades muito menores em comparação aos testes convencionais.