Visão geral do teste de caixa preta

O Black Box Testing é um método de teste de software em que a estrutura interna, o design ou a implementação do item que precisa ser testado são desconhecidos pelo testador.

O que é teste de software?

Teste de software é o procedimento de avaliar um sistema com a intenção de encontrar bugs. É realizada para verificar se o sistema atende aos requisitos especificados. O teste mede a qualidade geral do sistema em termos de correção, integridade, usabilidade, desempenho e outros atributos funcionais e não funcionais.

O teste de caixa preta é uma técnica de teste de software que se concentra na análise da funcionalidade do software, versus mecanismos internos do sistema. O teste da caixa preta foi desenvolvido como um método de análise de requisitos, especificações e estratégias de design de alto nível do cliente. Um testador de software de caixa preta selecionaria condições de execução de código e conjunto de entrada válidas e inválidas e verifica as respostas de saída válidas. O teste de caixa preta também é conhecido como teste funcional ou teste de caixa fechada.

Por exemplo, um mecanismo de pesquisa de um aplicativo. Em um mecanismo de pesquisa, um usuário inseria texto na barra de pesquisa do navegador. O mecanismo de pesquisa localizaria e recuperaria a saída de dados do usuário relacionada. O que está acontecendo nos bastidores é desconhecido para o usuário. Assim, a implementação interna não o compreende.

As vantagens dos testes da caixa preta incluem:

  • Simplicidade: Facilita o teste de projetos de alto nível e aplicativos complexos
  • Economiza recursos: os testadores se concentram na funcionalidade do software.
  • Casos de teste: foco na funcionalidade do software para facilitar o desenvolvimento rápido de casos de teste.
  • Oferece flexibilidade: Conhecimento de programação específico não é necessário.

Um exemplo

O testador testaria as páginas da web, ou seja, através de cliques e pressionamentos de teclas usando um navegador, fornecendo entradas e sem o conhecimento das estruturas internas, verificando as saídas com base nos resultados esperados.

Ferramentas usadas para teste de caixa preta

As ferramentas de teste de caixa preta dependem basicamente de que tipo de teste de caixa preta você está implementando.

  • Testes funcionais / de regressão podem ser feitos através do QTP ou Selênio
  • Testes não funcionais podem ser feitos através do LoadRunner ou Jmeter.

Níveis

No Black Box Testing, os seguintes níveis são para testes de software:

  • Teste de integração
  • Teste do sistema
  • Teste de aceitação

À medida que o nível é mais alto, a caixa seria maior e mais complexa e também mais testes de caixa-preta aparecem em cena.

Definição de teste de caixa preta

O teste da caixa preta pode ser definido como uma técnica de teste em que a funcionalidade do Application Under Test (AUT) é testada, mas com vista para a estrutura do código interno, detalhes da implementação e qualquer conhecimento dos caminhos internos do software.

Compreendendo o teste da caixa preta

O teste da caixa preta refere-se a todas as especificações e requisitos de software. O Black Box Testing concentra-se apenas nas entradas e saídas do sistema de software e não se incomoda em relação ao conhecimento interno do software.

Como o Black Box Testing facilita o trabalho?

Existe o ciclo de vida de teste de software, ou seja, STLC, que é um teste de caixa preta que é relativo a cada estágio do ciclo de vida de desenvolvimento de software.

  1. No estágio inicial ou primeiro do STLC, os requisitos do produto são coletados. Isso é conhecido como fase de coleta de requisitos.
  2. A fase a seguir é a fase de planejamento e análise de teste. As entregas desta fase geralmente são tipos de teste a serem executados de acordo com o projeto e um plano de teste para determinar os riscos e a mitigação desses riscos.
  3. A terceira fase é a fase de design na qual casos de teste, scripts de teste são preparados com a ajuda dos documentos de requisitos de software ou de requisitos de negócios.
  4. O último estágio é conhecido como fase de execução de teste. Como o nome indica, neste estágio todos os casos ou scripts de teste são executados. Todos os erros encontrados são relatados, corrigidos e testados novamente.

O que você pode fazer com o Black Box Testing?

Algumas das estratégias de teste destacadas usadas nos testes de caixa preta são explicadas abaixo:

  • Teste de Classe de Equivalência
  • Teste de valor limite
  • Teste da tabela de decisão
  • Teste de causa-efeito
  • Teste baseado em requisitos
  • Teste de compatibilidade

Teste de Classe de Equivalência

Esse tipo de teste é o preferido, pois ajuda a minimizar os casos de teste para um nível em que as chances de cobertura de requisitos estejam em um nível ideal.

Isso é feito nas duas etapas a seguir:

1. Identificando e Particionando em Classes de Equivalência: Inicialmente, os dados de entrada são particionados em um mínimo de dois conjuntos - o primeiro conjunto contém uma lista de valores de entrada válidos e o segundo conjunto contém a lista de valores de entrada inválidos. Por exemplo, se houver uma caixa de idade que possa conter idade no intervalo de 20 a 40, os valores de entrada válidos poderão ser 21, 25, 30, 39, etc. e os valores de entrada inválidos poderão ser qualquer valor menor que 20 ou maior que 40 como 10, 15, 45, 55, etc.

2. Criando casos de teste - Um número de identificação exclusivo é atribuído a cada classe de entrada válida e classe de entrada inválida e, em seguida, os casos de teste são gravados com a intenção de cobrir os dois conjuntos de classes de entrada.

Teste de valor limite

O teste do valor limite concentra-se basicamente nos valores dos limites. Ele avalia se um determinado intervalo de valores seria ou não aceitável pelo sistema ou não. O teste do valor limite é útil para reduzir / minimizar o número de casos de teste. O teste do valor limite é mais adequado para os sistemas em que a entrada está dentro de certos intervalos.

Teste da tabela de decisão

Uma tabela de decisão demonstra causas e seus efeitos simultâneos na forma de uma matriz. Nos testes da tabela de decisão, existe uma combinação única em cada coluna.

Gráficos de efeito de causa

O gráfico de causa-efeito desenvolve um relacionamento entre causas (entradas lógicas) com o efeito correspondente (Ações). Eles são representados com a ajuda de gráficos booleanos. As etapas a serem seguidas são as seguintes:

  1. Identificação de entradas e saídas.
  2. Desenvolvimento de gráfico de causa-efeito.
  3. Transformação do gráfico na tabela de decisão.
  4. Conversão de regras da tabela de decisão em casos de teste.

Teste baseado em requisitos

Esse tipo de teste inclui a verificação se os requisitos mencionados no SRS ou na especificação de requisitos de software são válidos ou não.

Teste de compatibilidade

Para fornecer funcionalidade, os produtos e a infraestrutura dependem do resultado das execuções dos casos de teste. Independentemente das alterações feitas nos parâmetros de infraestrutura, ainda é esperado que o produto funcione corretamente. Alguns dos parâmetros que geralmente afetam a compatibilidade do software estão listados abaixo:

  1. Processadores Pentium 3 ou Pentium 4 e o número de processadores usados
  2. Arquitetura de 32 ou 64 bits
  3. Servidores de banco de dados ou qualquer outro componente de backend
  4. Tipo de sistema operacional (Windows, Linux, etc).

Trabalhando com testes de caixa preta

A seguir, estão as etapas básicas necessárias para executar o teste de caixa preta.

  • Em primeiro lugar, são tratadas as especificações e os requisitos do sistema.
  • Em segundo lugar, o testador escolheria entradas lógicas, isto é, cenários de teste positivos para verificar se o SUT os processou corretamente ou não. Além disso, entradas inválidas também, ou seja, cenário de teste negativo também é escolhido para verificar se o SUT pode detectá-las.
  • Em terceiro lugar, os testadores determinariam as saídas esperadas para todas as entradas válidas.
  • Em quarto lugar, o testador de software cria casos de teste com as entradas selecionadas e válidas.
  • Em quinto lugar, os casos de teste criados são executados.
  • Em sexto lugar, os testadores de software distinguem as saídas reais das esperadas e verificam se são iguais.
  • Por fim, se houver algum, eles serão corrigidos e testados novamente.

Vantagens

  • Os testes de caixa preta são sempre executados do ponto de vista do usuário, pois ajudariam a expor discrepâncias significativamente.
  • Os testadores de caixa preta também não precisam conhecer nenhuma linguagem de programação.
  • Os testadores de caixa preta não precisam saber como o software foi implementado.
  • Os casos de teste relacionados à caixa preta são projetados pelos testadores assim que as especificações estiverem no estágio concluído.

Desvantagens

  • Como não é necessário nenhum conhecimento técnico ou de programação, pode haver instâncias para ignorar todas as condições válidas e possíveis do cenário que precisa ser testado.
  • Existem possibilidades de menos testes e ignorância de todas as entradas possíveis e seus testes de saída devido a restrições de tempo (tempo estipulado).
  • A cobertura de teste completa e finalizada muitas vezes não é possível para projetos complexos e grandes.

Por que devemos usar o Black Box Testing?

As ferramentas de teste da caixa preta são basicamente as de gravação e reprodução. Essas ferramentas registram os casos de teste na forma de scripts como TSL, JavaScript, script VB etc. Todas essas ferramentas são basicamente usadas para testes de regressão, a fim de verificar se a nova compilação fornecida causou algum defeito na funcionalidade funcional do aplicativo. .

Escopo

Os tipos mais importantes e importantes de teste de caixa preta são os seguintes:

  • Teste funcional: esse tipo de teste de caixa preta refere-se aos requisitos funcionais do sistema e é executado por testadores de software.
  • Teste não funcional: esse tipo de teste de caixa preta não se refere ao teste de uma funcionalidade específica, mas a todos os requisitos não funcionais, como desempenho, usabilidade, escalabilidade e muito mais.
  • Teste de regressão: O teste de regressão é executado depois que um código é corrigido, qualquer atualização de código ou qualquer outra manutenção do sistema é feita para verificar se o novo código não afetou a funcionalidade existente.

Diferenças

Black Box Testing é a técnica de teste de software em que a estrutura interna, o design ou a implementação do produto que está sendo testado são desconhecidos pelo testador.

O White Box Testing é uma técnica de teste de software em que a estrutura interna, o design ou a implementação do produto que está sendo testado são conhecidos pelo testador.

Black Box Testing Teste da caixa branca
O teste da caixa preta é onde a estrutura interna ou o programa ou o código é desconhecido.O teste de caixa branca é o local em que o testador tem conhecimento sobre a estrutura interna do software
Geralmente é feito por testadores de software.Geralmente é feito por desenvolvedores de software.
Aqui, absolutamente nenhum conhecimento de implementação é necessário.Aqui, o conhecimento da implementação é necessário.
Também pode ser chamado de teste de software externo / externo.Também pode ser chamado de teste de software interno / interno.
O teste da caixa preta é o teste funcional do software.O teste de caixa branca é o teste estrutural do software.
Este teste pode ser iniciado com base no documento de especificações de requisitos.Esse tipo de teste de software é iniciado após um documento de design detalhado.
Aqui não é necessário nenhum conhecimento da linguagem de programação.Aqui é obrigatório ter conhecimento de pelo menos uma linguagem de programação.
É basicamente teste de comportamento do software.É o teste lógico básico do software.
É principalmente aplicável aos níveis mais altos de teste.É principalmente aplicável aos níveis mais baixos de teste.
É também chamado de teste comportamental.Também é chamado de teste de caixa transparente ou de vidro.
O teste de caixa preta consome menos tempo que o teste de caixa branca.O teste da caixa branca consome mais tempo que o teste da caixa preta.
O teste de caixa preta não é apropriado para teste de algoritmo.O teste de caixa branca é apropriado para teste de algoritmo.
Isso pode ser realizado por métodos de tentativa e erro.Os limites internos ou internos dos dados, juntamente com seu domínio, podem ser testados minuciosamente.
Por exemplo: Pesquisando algo no google com a ajuda de palavras-chavePor exemplo: Usando entradas para verificar e verificar loops.
Tipos

  1. Teste funcional
  2. Teste não funcional
  3. Teste de regressão
Tipos

  1. Teste de caminho
  2. Teste de Loop
  3. Teste de condição

Conclusão:

Todos os tópicos discutidos são tópicos básicos e avançados relacionados ao teste de caixa preta e à essência de todas as suas técnicas e métodos.

Como dificilmente é possível testar tudo junto com o envolvimento humano e isso com 100% de precisão, mas se os métodos já especificados forem usados ​​com muita eficácia, sem dúvida, a qualidade do sistema será aprimorada. Portanto, para terminar, o teste de caixa preta é um método muito eficaz para identificar os defeitos e verificar a funcionalidade do sistema.

Artigos recomendados

Este foi um guia para o teste de caixa preta. Aqui discutimos como o teste de caixa preta é realizado com a ajuda de exemplos e diferentes técnicas de teste de caixa preta com ferramentas. Você também pode consultar nossos outros artigos sugeridos para saber mais:

  1. Teste da caixa branca
  2. Perguntas da entrevista de teste
  3. O que é Hypervisor
  4. Perguntas da entrevista para testes de jogos