O que são dados de teste em testes de software?

Como testador, você pode pensar que 'Projetar casos de teste é bastante desafiador, então por que se preocupar com algo tão trivial como dados de teste'. O objetivo deste tutorial é apresentar os dados de teste, sua importância e dar dicas e truques práticos para gerar dados de teste rapidamente. Então, vamos começar!

O que são dados de teste em testes de software?

Dados de teste em testes de software é a entrada fornecida a um programa de software durante a execução do teste. Representa dados que afetam ou são afetados pela execução do software durante o teste. Os dados de teste são usados ​​tanto para testes positivos, para verificar se as funções produzem resultados esperados para determinadas entradas, quanto para testes negativos, para testar a capacidade do software de lidar com entradas incomuns, excepcionais ou inesperadas.

Dados de teste mal projetados podem não testar todos os cenários de teste possíveis, o que prejudicará a qualidade do software.

Dados de teste em testes de software

O que é geração de dados de teste? Por que os dados de teste devem ser criados antes da execução do teste?

Todo mundo sabe que teste é um processo que produz e consome grandes quantidades de dados. Os dados usados ​​no teste descrevem as condições iniciais de um teste e representam o meio através do qual o testador influencia o software. É uma parte crucial da maioria Testes Funcionais.

Dependendo do seu ambiente de teste, você pode precisar CRIAR dados de teste (na maioria das vezes) ou pelo menos identificar dados de teste adequados para seus casos de teste (se os dados de teste já estiverem criados).

Normalmente, os dados de teste são criados em sincronia com o caso de teste se destina a ser usado.

Dados de teste podem ser gerados –

  • manualmente
  • Cópia em massa de dados da produção para o ambiente de teste
  • Cópia em massa de dados de teste de sistemas clientes legados
  • Ferramentas automatizadas de geração de dados de teste

Normalmente, os dados de amostra devem ser gerados antes de você iniciar a execução do teste porque, de outra forma, será difícil lidar com o gerenciamento de dados de teste. Desde em muitos ambientes de teste que criam dados de teste exigem várias etapas prévias ou configurações de ambiente de teste muito demoradas. . Além disso, se a geração de dados de teste for feita enquanto você está na fase de execução do teste e pode exceder o prazo do teste.

Abaixo estão descritos vários tipos de testes, juntamente com algumas sugestões sobre suas necessidades de dados de teste.

Dados de teste para branco Box Ensaios

In Branco Box Ensaios, o gerenciamento de dados de teste é derivado do exame direto do código a ser testado. Os dados de teste podem ser selecionados levando em consideração o seguinte:

  • É desejável cobrir o maior número possível de ramos; os dados de teste podem ser gerados de forma que todas as ramificações no código-fonte do programa sejam testadas pelo menos uma vez
  • Teste de caminho: todos os caminhos no código-fonte do programa são testados pelo menos uma vez – a preparação dos dados de teste pode ser feita para cobrir o maior número de casos possível
  • Negativo Teste de API:
    • Os dados de teste podem conter tipos de parâmetros inválidos usados ​​para chamar métodos diferentes
    • Os dados de teste podem consistir em combinações inválidas de argumentos que são usados ​​para chamar os métodos do programa

Dados de teste para testes de desempenho

Teste de Desempenho é o tipo de teste executado para determinar a rapidez com que o sistema responde a uma carga de trabalho específica. O objetivo desse tipo de teste não é encontrar bugs, mas sim eliminar gargalos. Um aspecto importante do Teste de Desempenho é que o conjunto de dados amostrais utilizado deve estar muito próximo do 'real' ou 'ao vivo' dados que são usados ​​na produção. Surge a seguinte dúvida: 'Ok, é bom testar com dados reais, mas como faço para obter esses dados?' A resposta é bastante direta: das pessoas que sabem melhor – os clientes. Eles podem fornecer alguns dados que já possuem ou, se não tiverem um conjunto de dados existente, podem ajudá-lo, fornecendo feedback sobre como seriam os dados do mundo real. Caso você esteja em um testes de manutenção projeto, você poderia copiar dados do ambiente de produção para a plataforma de testes. É uma boa prática anonimizar (embaralhar) dados confidenciais do cliente, como número de seguro social, cartão de crédito Numbers, Dados bancários etc. enquanto a cópia é feita.

Dados de teste para testes de segurança

Teste de Segurança é o processo que determina se um sistema de informação protege os dados contra intenções maliciosas. O conjunto de dados que precisa ser projetado para testar completamente a segurança de um software deve abranger os seguintes tópicos:

  • Confidencialidade: Todas as informações fornecidas pelos clientes são mantidas na mais estrita confidencialidade e não são compartilhadas com terceiros. Como um breve exemplo, se um aplicativo usa SSL, você pode projetar um conjunto de dados de teste que verifica se a criptografia foi feita corretamente.
  • Integrity: Determine se as informações fornecidas pelo sistema estão corretas. Para projetar dados de teste adequados, você pode começar analisando detalhadamente o design, o código, os bancos de dados e as estruturas de arquivos.
  • Autenticação: Representa o processo de estabelecimento da identidade de um usuário. Os dados de teste podem ser concebidos como uma combinação diferente de nomes de usuário e senhas e seu objetivo é verificar se apenas as pessoas autorizadas conseguem acessar o sistema de software.
  • Autorização: Informa quais são os direitos de um usuário específico. Os dados de teste podem conter uma combinação diferente de usuários, funções e operações para verificar se apenas usuários com privilégios suficientes são capazes de realizar uma determinada operação.

Dados de teste para preto Box Ensaios

De preto Box O teste do código não é visível para o testador. Seus casos de teste funcionais podem ter dados de teste que atendem aos seguintes critérios –

  • Não existem dados: Verifique a resposta do sistema quando nenhum dado for enviado
  • Dados válidos: Verifique a resposta do sistema quando dados de teste válidos forem enviados
  • Dados inválidos: Verifique a resposta do sistema quando Inválido dados de teste são enviados
  • Formato de dados ilegal: Verifique a resposta do sistema quando os dados de teste estão em um formato inválido
  • Conjunto de dados de condição limite: Dados de teste que atendem às condições de valor limite
  • Conjunto de dados de partição de equivalência: dados de teste que qualificam suas partições de equivalência.
  • Conjunto de dados da tabela de decisão: Dados de teste que qualificam sua estratégia de teste de tabela de decisão
  • Conjunto de dados de teste de transição de estado: Dados de teste que atendem à sua estratégia de testes de transição de estado
  • Use dados de teste de caso: teste dados sincronizados com seus casos de uso.

Note: Dependendo do aplicativo de software a ser testado, você pode usar alguns ou todos os métodos de criação de dados de teste acima

Ferramentas automatizadas de geração de dados de teste

Para gerar vários conjuntos de dados, você pode usar uma gama de ferramentas automatizadas de geração de dados de teste. Abaixo estão alguns exemplos de tais ferramentas:

DTM Gerador de dados de teste, é um utilitário totalmente personalizável que gera dados, tabelas (visualizações, procedimentos, etc.) para fins de teste de banco de dados (teste de desempenho, teste de controle de qualidade, teste de carga ou teste de usabilidade).

Datatect é um SQL gerador de dados da Banner Software, gera uma variedade de dados de teste realistas em arquivos simples ASCII ou gera diretamente dados de teste para RDBMS, incluindo Oracle, Sybase, SQL Server e Informix.

Conclusão

Concluindo, dados de teste bem projetados permitem identificar e corrigir falhas graves de funcionalidade. A escolha dos dados de teste selecionados deve ser reavaliada em cada fase de um ciclo multifásico de desenvolvimento de produto. Então, fique sempre de olho nisso. Para facilitar esse processo, utilizando eficientes testar ferramentas de geração de dados pode agilizar significativamente seu fluxo de trabalho.