what is test harness
Não sou um grande fã de rótulos. Aqui está o que quero dizer com isso.
Se eu tiver que verificar alguns aspectos antes de determinar se o controle de qualidade pode ou não ser iniciado, simplesmente farei uma lista e executarei a ação. Na minha opinião, não importa se eu a chamo oficialmente de operação de “revisão de prontidão de teste” ou não - enquanto eu estiver fazendo o que devo fazer, acho que não há necessidade de chamá-la de um nome ou rótulo específico .
Mas eu estou corrigido. Recentemente, em minha classe, eu estava ensinando modelo Agile-scrum para desenvolvimento de software. Havia um pergunta ' como o teste é executado em um método ágil? “Eu estava explicando dois métodos - um é onde tentamos incluí-lo em cada sprint e o outro é uma prática recomendada que aprendi na implementação em primeira mão - que é atrasar um sprint de controle de qualidade em relação ao de desenvolvimento.
Um dos meus alunos me perguntou se havia um nome para o segundo e eu não perguntei porque nunca coloquei ênfase nos próprios nomes.
Mas, naquele momento, senti como era importante rotular um processo apropriadamente para garantir que temos um termo para nos referir ao processo de que estamos falando.
Portanto, hoje vamos fazer exatamente isso: Aprenda o processo por trás do termo “Test Harness”.
Como mencionei antes em alguns dos meus artigos anteriores: muito pode ser entendido a partir do significado literal do nome. Portanto, verifique no seu dicionário o que significa “Arreios” e a grande revelação se se aplica ou não, neste caso, é algo que veremos no final.
Existem dois contextos em que o equipamento de teste é usado:
- Teste de automação
- Teste de integração
Vamos começar com o primeiro:
O que você aprenderá:
- Contexto nº 1: Harness de Teste em Automação de Teste
- Contexto 2: Harness de Teste em Teste de Integração
- Para concluir:
- Leitura recomendada
Contexto # 1: Harness de teste em automação de teste
No a teste de automação mundo, O chicote de teste se refere à estrutura e aos sistemas de software que contêm os scripts de teste, parâmetros necessários (em outras palavras, dados) para executar esses scripts, reunir resultados de teste, compará-los (se necessário) e monitorar os resultados.
Vou tentar tornar isso mais simples com a ajuda de um exemplo.
Exemplo:
Se eu estivesse falando sobre um projeto que usa HP Quick Test Professional (agora UFT) para testes funcionais, HP ALM está vinculado para organizar e gerenciar todos os scripts, execuções e resultados e os dados são selecionados de um banco de dados MS Access - O seguinte seria o equipamento de teste para este projeto:
o que significa incompatibilidade de chave de segurança
- O próprio software QTP (UFT)
- Os scripts e o local físico onde estão armazenados
- Os conjuntos de teste
- MS Access DB para fornecer parâmetros, dados ou as diferentes condições que devem ser fornecidas aos scripts de teste
- HP ALM
- Os resultados do teste e os atributos de monitoramento comparativo
Como você pode ver, sistemas de software (automação, gerenciamento de teste, etc.), dados, condições, resultados - todos eles se tornam parte integrante do equipamento de teste - a única exclusão sendo o próprio AUT.
Contexto 2: Equipamento de Teste em Teste de Integração
Agora é hora de explorar o que significa equipamento de teste no contexto de 'Teste de integração' .
O teste de integração consiste em reunir dois ou módulos (ou unidades) de código que interagem entre si e verificar se o comportamento combinado é o esperado ou não.
Idealmente, o teste de integração de dois módulos deve e seria possível realizar quando ambos estiverem 100% prontos, testados na unidade e prontos para uso.
No entanto, não vivemos em um mundo perfeito - o que significa que um ou mais módulos / unidades de código que devem ser os elementos constituintes do teste de integração podem não estar disponíveis. Para resolver esta situação, temos stubs e drivers.
Stud é geralmente um trecho de código limitado em sua função e substituirá ou representará o módulo real de código que precisa ocupar seu lugar.
Exemplo: Para explicar melhor, deixe-me usar um cenário
Se houver uma unidade A e uma unidade B que devem ser integradas. Além disso, essa Unidade A envia dados para a Unidade B ou, em outras palavras, a Unidade A chama a Unidade B.
Unidade A se 100% disponível e unidade B não, então o desenvolvedor pode escrever um pedaço de código que é limitado em sua capacidade (o que isso significa é a Unidade B se tiver 10 recursos, apenas 2 ou 3 que são importantes para integração com A) será desenvolvido e é usado para integração. Isso é chamado de STUB.
A integração agora seria: Unidade A-> Stub (substituindo por B)
Por outro lado, se a Unidade A está 0% disponível e a Unidade B está 100% disponível, a simulação ou proxy tem que ser a Unidade A aqui. Portanto, quando uma função de chamada é substituída por um código auxiliar, ela é chamada de MOTORISTA .
A integração, neste caso, seria : DRIVER (substituindo por A) -> Unidade B
Todo o framework: O processo de planejamento, criação e uso de stubs e / ou drivers para realizar o teste de integração é chamado de Test Harness.
Observação : o exemplo acima é limitado e o cenário em tempo real pode não ser tão simples ou direto como este. Os aplicativos em tempo real têm pontos de integração complexos e compostos.
Para concluir:
Como sempre, STH acredita que mesmo a mais técnica das definições pode ser derivada do significado simples e literal do termo.
O dicionário no meu smartphone me diz que um “arnês” é (veja o contexto do verbo):
“Colocar em condições de uso efetivo; ganhe controle para um fim específico; “
Seguindo isso e adaptando isso para o teste:
“Um equipamento de teste consiste simplesmente em criar a estrutura correta e usá-la (e todos os seus elementos constituintes) para controlar toda a atividade a fim de obter o máximo da situação - seja automação ou integração. “
Lá, encerramos nosso caso.
Mais algumas coisas antes de terminarmos:
P. Quais são os benefícios de um equipamento de teste?
Agora, você perguntaria qual é a importância da respiração para a vida humana - ela é intrínseca, não é? Da mesma forma, uma estrutura para testar efetivamente é como um dado. O benefício, se tivermos que soletrar com tantas palavras, eu diria que todo processo de teste tem um equipamento de teste, quer digamos conscientemente que é “O equipamento de teste” ou não. É como viajar conhecendo o percurso, o destino e todas as outras dinâmicas da viagem.
P. Qual é a diferença entre o equipamento de teste e a estrutura de teste ?
Pessoalmente, acho que comparar e contrastar nem sempre é a abordagem certa ao compreender conceitos relacionados, porque as linhas costumam ficar desfocadas. Como resposta a essa pergunta, eu diria que a estrutura de teste é específica e a estrutura de teste é genérica. Por exemplo, um equipamento de teste incluirá as informações exatas da ferramenta de gerenciamento de teste até as IDs de login a serem usadas. Um framework de teste, por outro lado, simplesmente dirá que uma ferramenta de gerenciamento de teste fará as respectivas atividades.
Q. Existem ferramentas de controle de desempenho ?
O equipamento de teste inclui ferramentas - como software de automação, software de gerenciamento de teste, etc. No entanto, não há ferramentas específicas para implementar um equipamento de teste. Todas ou quaisquer ferramentas podem fazer parte do Test Harness: QTP, JUnit, HP ALM - todos eles podem ser ferramentas constituintes de qualquer Test Harness.
Sobre o autor: Este artigo foi escrito pelo membro da equipe STH Swati S.
E, sempre com definições, sempre há diferenças de opinião. Agradecemos suas opiniões e adoramos ouvir o que você pensa. Fique à vontade para deixar um comentário, dúvida ou sugestão abaixo.
Leitura recomendada
- Teste de carga com tutoriais HP LoadRunner
- Conselhos sobre teste de software para testadores iniciantes
- Melhores ferramentas de teste de software 2021 (QA Test Automation Tools)
- As diferenças entre teste de unidade, teste de integração e teste funcional
- Os testadores estão perdendo o controle sobre os testes devido à automação?
- Negócio global de teste de software chegará a $ 28,8 bilhões em breve
- Como manter a motivação viva em testadores de software?
- Download do e-book do Testing Primer