Comput
A princípio, quando os softwares eram produzidos em pequena escala e menos complexos, o programador era responsável por produzir o código, testá-lo e avaliá-lo. Com o aumento do poder computacional, o cliente final tornou-se mais exigente com a qualidade produto e os prazos de entrega cada vez menores tornando mais evidente a preocupação com a qualidade do produto final.
Estimativas são necessárias para determinar quando é viável desenvolver o sistema e propor contratos. Além disso, boas estimativas de esforço são necessárias para planejar e gerenciar projetos de software, acarretando o sucesso do mesmo (PRESSMAN, 2001).
Neste cenário, restringem-se as margens para grandes falhas ou promessas não cumpridas pelo software, ocasionando, no pior caso, perda do cliente. Neste momento surgiu a necessidade de um profissional de teste, que tornou-se responsável por verificar e validar não só a aplicação, mas também todos os artefatos produzidos no projeto de desenvolvimento de software, por isso pode-se dizer que testar um software é uma forma de medir a qualidade.
Geralmente um engenheiro de teste é responsável pela construção dos testes que serão aplicados na ferramenta, mas focaremos num profissional mais genérico que participa de todo o processo de teste, desde o planejamento até as avalições.
A atividade de teste pode ser dividida em cinco partes: Planejamento e controle, design, construção e execução, avaliação das saídas e fechamento das atividades,.
Iremos seguir essa sequência para demonstrar os conhecimentos e o posicionamento deste profissional.