Conceito: Ferramentas e Automatização de Testes
Esta diretriz discute os tipos de ferramentas que podem ser utilizadas para aprimorar a eficiência do teste.
Relacionamentos
Descrição Principal

As ferramentas de automação de teste estão sendo lançadas cada vez mais no mercado para automatizar as tarefas de Teste. Existem várias ferramentas de automação, mas é improvável que uma única ferramenta seja capaz de automatizar todas as tarefas de teste. A maioria das ferramentas têm o foco em uma tarefa ou um grupo de tarefas específico e algumas abordam somente um aspecto de uma tarefa.

Ao avaliar ferramentas diferentes para a automação de teste, é importante saber o tipo de ferramenta que você está avaliando, as limitações da ferramenta e quais tarefas a ferramenta aborda e automatiza. Freqüentemente as ferramentas de teste são avaliadas e adquiridas com base nestas categorias:

Função

As ferramentas de teste podem ser categorizadas pelas funções desempenhadas. Estas são as designações de funções comuns para ferramentas:

  • Ferramentas de aquisição de dados que adquirem dados a serem utilizados nas tarefas de teste. Os dados podem ser adquiridos por conversão, extração, transformação ou captura de dados existente ou por geração de casos de uso ou especificações suplementares.
  • Ferramentas de medida estática que analisam as informações contidas nos modelos de design, código fonte ou outras origens fixas. A análise produz informações sobre os fluxos de lógica, de dados ou da métrica de qualidade como complexidade, manutenção ou linhas de código.
  • Ferramentas de medida dinâmica que realizam uma análise durante a execução do código. As medidas incluem a operação do tempo de execução do código como a memória, detecção de erros e desempenho.
  • Simuladores ou drivers que desempenham tarefas que, por razões de cronometragem, despesa ou segurança, não estão disponíveis para as finalidades de teste.
  • Ferramentas de gerenciamento de teste que auxiliam no planejamento, design, implementação, execução, avaliação e gerenciamento das tarefas de teste ou dos produtos de trabalho.

Caixa Branca vs. Caixa Preta

AS ferramentas de teste são caracterizadas como caixa branca ou caixa preta com base na maneira em que as ferramentas são utilizadas ou a tecnologia e conhecimento necessários para utilizar as ferramentas.

  • Ferramentas de caixa branca utilizam o conhecimento do código, os modelos de design ou outro material de origem para implementar e executar os testes.
  • Ferramentas de caixa preta utilizam os casos de uso ou a descrição funcional do objetivo do teste.

Enquanto as ferramentas de caixa branca têm conhecimento de como o objetivo do teste processa o pedido, as ferramentas de caixa preta utilizam as condições de entrada e saída para avaliar o teste.

Especialização

Além das amplas classificações de ferramentas apresentadas anteriormente, as ferramentas também podem ser classificadas por especialização.

  • Ferramentas de Registro e Reprodução combinam a aquisição de dados com medida dinâmica. Os dados de teste são adquiridos durante o registro de eventos (conhecido como implementação de teste). Posteriormente, durante a execução do teste, os dados são utilizados para reproduzir o script de teste que é utilizado para avaliar a execução do objetivo do teste.
  • Ferramentas de medição de qualidade são ferramentas de medida estática que executam uma análise estática dos modelos de design ou do código fonte para estabelecer um conjunto de parâmetros que descrevem a qualidade do objetivo do teste. Os parâmetros podem indicar confiabilidade, complexidade, capacidade de manutenção ou outras medidas de qualidade.
  • Ferramentas de monitoramento de cobertura indicam a conclusão do teste, identificando quanto do objetivo do teste foi alcançado, em alguma dimensão, durante o teste. As classes comuns de cobertura incluem casos de uso (com base em requisitos), ramificação ou nó lógicos (com base em código), estado dos dados e pontos de função.
  • Geradores de caso de teste automatizam a geração dos dados de teste. Os geradores de caso de teste utilizam uma especificação formal das entradas de dados do objetivo do teste ou dos modelos de design e do código fonte para produzir dados de teste que testam as entradas nominais, entradas de erro e casos de limite.
  • Ferramentas de comparação comparam os resultados de teste com os resultados de referência e identificam as diferenças. Os comparadores são diferentes em sua especificidade para formatos de dados específicos. Por exemplo, os comparadores podem ser baseados em pixels para comparar imagens de bitmap ou em objetos para comparar propriedades ou dados do objeto.
  • Extratores de dados fornecem entradas para casos de teste a partir de origens existentes, incluindo os bancos de dados, fluxos de dados em um sistema de comunicação, relatórios ou modelos de design e código fonte.