Teste de software
2.1 Histórico
Testes de software de forma manual ainda é uma realidade negativa, desde os primórdios da computação até os dias atuais. Por conta de ser uma prática habitual e elementar de constatar, a corretude e inconsistência do código e da aplicação web como um todo, por meio de testes simplórios (BERNARDO, P. C.;KON, F., 2011).
A prática de testar é diretamente relacionada ao desenvolvimento de software, e sempre ocorreu a necessidade de criar meios e dispositivos, para testar funcionalidades específicas ou trechos códigos das aplicações, quando a utilização dos testes manuais é inviável.
Os testes automatizados disseminaram-se através de ferramentas especializadas, que facilitam a escrita, manutenção e execução dos testes. Essas ferramentas permitem separar o código-fonte dos testes e do sistema, evitando que os casos de testes interfiram no comportamento do sistema. O primeiro arcabouço conhecido é o Taligent Test Framework criado por Alan Liu e David McCusker em 1991 e publicado em 1995, mas que não se popularizou. Por volta de 1994, Kent Beck criou o arcabouço SUnit para linguagem SmallTalk, que até hoje é utilizado como referência para arcabouços semelhantes para outras linguagens de programação (BERNARDO, P. C., 2011, p. 11).
Atualmente os arcabouços de desenvolvimento de aplicações para web, fornecem bibliotecas e subsídios para o uso e execução de testes automatizados. Exemplos de ferramentas e arcabouços que possuímos atualmente JUnit, Minitest e RSpec (BERNARDO, P. C.;KON, F., 2011). Todos estes arcabouços dispõem de formas, para evitar testes manuais durante o ciclo de desenvolvimento de aplicativos web.
Segundo Bernardo (2011) é visualizada a importância da automação de testes, nas implementações de ferramentas de software populares que já trazem consigo módulos para integração e realização dos testes. Os frameworks para aplicações web Ruby on Rails, Grails e Lift, fornecem uma arquitetura padronizada para a