O que é teste de referência?

Antes de aprendermos o teste de benchmark, vamos entender-

Referência em testes de desempenho

A Referência em testes de desempenho é uma métrica ou um ponto de referência com o qual produtos ou serviços de software podem ser comparados para avaliar as medidas de qualidade. Em outras palavras, Benchmark significa um padrão definido que ajuda a determinar a qualidade de um produto ou serviço de software. Podemos avaliar um produto ou serviço de software para avaliar sua qualidade.

Por exemplo, um time de futebol tem uma referência para um jogador se qualificar como jogador da primeira liga. O conjunto de habilidades para o benchmark pode ser um número de gols marcados nas últimas cinco temporadas, ou posse de bola durante o primeiro intervalo, ou um número mínimo de jogos disputados no torneio local, etc.

O que é teste de referência?

Teste de benchmark mede um conjunto repetível de resultados quantificáveis ​​que serve como ponto de referência com o qual produtos/serviços podem ser comparados. O objetivo dos resultados dos testes de benchmark é comparar as versões de software atuais e futuras com seus respectivos benchmarks.

Uma referência deve ser Repetivel. Por exemplo, a cada iteração do teste de carga, se os tempos de resposta variarem muito, o desempenho do sistema deverá ser avaliado. O tempo de resposta precisa ser estável em diferentes condições de carga.

Uma referência deve ser quantificável. Por exemplo, a experiência do usuário não pode ser quantificada em números, mas o tempo que um usuário passa em uma página da web devido a uma boa IU pode ser quantificado.

Teste de Benchmark não é um termo relacionado apenas a testes de software, mas também trata de testes de hardware. e é considerada uma das tarefas mais importantes do mundo dos negócios.

Neste tutorial, discutiremos benchmarks para uma aplicação cliente-servidor ou, em outras palavras, uma aplicação web. O teste de benchmark pode ser feito para os seguintes serviços,

  • Compatibilidade do navegador
  • Links quebrados
  • Conformidade com HTML
  • Tempo de carregamento
  • Acessibilidade
  • Popularidade do link

Por que o teste de benchmark é importante?

No nível empresarial, os testes de benchmark podem ser úteis para determinar

  • Qual é o desempenho de um aplicativo baseado na web em relação aos concorrentes
  • Como diferentes tipos de clientes vivenciam o tempo de resposta e a disponibilidade de um site
  • Garante que os sites cumpram os padrões e melhores práticas
  • Permite avaliar prestadores de serviços terceirizados antes de tomar uma decisão de contratação
  • Permite descobrir os erros a serem evitados

Criando um plano de teste de referência

Um plano de teste é o elemento mais crucial do processo de teste de benchmark. O plano de teste de benchmark segue as etapas abaixo-

  1. Dimensionando e invocando carga de trabalho
  2. Colete e armazene medidas para testes de benchmark
  3. Defina o intervalo de tempo necessário e o ponto terminal de um processo de teste
  4. Prepare um plano de backup para superar qualquer nova falha no caso de teste
  5. Decida a autoridade para encerrar o processo final

Como fazer testes de benchmark

Existem 4 fases envolvidas no teste de benchmark:

Teste de benchmark

Etapa 1) Fase de Planejamento

  • Identificando e priorizando padrões e requisitos
  • Decida os critérios de referência
  • Definir processo de teste de benchmark

Etapa 2) Fase de Análise

  • Identifique a causa raiz do erro para melhorar a qualidade
  • Definir metas para o processo de teste

Etapa 3) Fase de Integração

  • Compartilhe os resultados com a pessoa em questão e obtenha aprovação
  • Estabeleça metas funcionais

Etapa 4) Fase de Ação

  • Desenvolver plano de teste e documentação
  • Implementar ações especificadas nas fases anteriores e monitorar o progresso
  • Execute o processo continuamente

Componentes do teste de benchmark

Sistemas diferentes têm graus variados de complexidade e exigem técnicas diferentes para testar aplicativos.

Existem 3 componentes principais do teste de benchmark. Eles são

  1. Especificações de carga de trabalho: Determinar o tipo e a frequência das solicitações a serem enviadas ao sistema em teste.
  2. Especificações de métricas: Determine qual elemento a ser medido, por exemplo; Velocidade de download
  3. Especificação de medição: Determinar como medir os elementos especificados para encontrar valores apropriados

Coisas a considerar durante o teste de benchmark

Para executar testes de benchmark bem-sucedidos, os seguintes fatos precisam ser considerados.

  • Consistência e controle são medidas importantes para realizar testes de benchmark.
  • Compreenda a arquitetura do sistema para projetar critérios de teste e dados de teste
  • Examine os dados estáticos iniciais e atualize de acordo com o número de usuários
  • Verifique a funcionalidade 'Redefinir' sempre que necessário e defina a taxa de transação por segundo (isso lida especificamente com transações de usuários em um banco de dados)
  • Divida os elementos do sistema de acordo com suas funcionalidades
  • Cada sistema possui arquitetura e design diferentes, o que precisa ser levado em consideração ao realizar testes de benchmark
  • Certifique-se de que todos os componentes do software estejam em condições de funcionamento
  • O sistema operacional e os drivers de suporte devem funcionar corretamente
  • Remova a pré-busca e os arquivos temporários do sistema antes de executar um benchmark
  • Feche todos os processos e aplicativos em execução em segundo plano
  • Verifique se há atualizações de sistemas operacionais e configurações reais

Estruturas de teste de referência

Os Benchmark Testing Frameworks ajudam a realizar algumas tarefas fundamentais para verificações de desempenho. Essas tarefas fundamentais incluem-

  1. Acesso ao Banco de Dados
  2. Composição do lado do servidor
  3. Serialização JSON
  4. Configuração

Estrutura de referência 2.0 & TechEmpower são estruturas de teste de benchmark usadas principalmente.

Vamos dar uma olhada no TechEmpower. Teremos uma rápida olhada em suas características mais importantes.

  • É uma estrutura de código aberto para realizar tarefas de benchmark
  • Precisa da configuração correta do ambiente de benchmarking
  • Existem basicamente dois modos, como Modo de referência para comparar resultados e Modo de verificação para quem não é especialista
  • Existem vários arquivos necessários que são exclusivos e podem variar de sistema para sistema de acordo
  • Inclui um 'Arquivo de configuração de benchmark' que define um conjunto de instruções de teste e metadados para um programa de benchmark
  • É baseado em vários idiomas, como Java, Python, Rubi, PHP, JavaScript, Perl, C, Groovy, Haskell, Scala, etc.
  • Object – Relational Mapper (ORM) é usado para realizar testes em bancos de dados, serialização JSON, etc.

Ferramentas de teste de referência

As ferramentas de teste de benchmark estão sendo categorizadas de acordo. Vamos nos alistar um por um.

Ferramentas para teste Windows Computadores:

  1. Prime95
  2. Novabench
  3. 3DMark
  4. SiSoftware Sandra

Ferramentas para testar o desempenho da CPU:

  1. Cinebench
  2. Geekbench

Ferramentas para testar a velocidade do sistema e baterias de dispositivos móveis:

  1. Foronix (Linux)
  2. CPU UserBenchmark (Teste de benchmark de CPU)
  3. Vellamo (desempenho de navegação na Web)

O teste de benchmark também pode ser realizado com Android telefones e tablets. Entre todos, Senha é uma ferramenta de teste de benchmark bem conhecida e amplamente utilizada.

Resumo

  • Na Engenharia de Software, o Teste de Benchmark fornece um conjunto repetível de resultados quantificáveis ​​sobre o desempenho de um sistema.
  • Útil para testar condições de carga e determinar o comportamento do sistema contra ataques DDoS.
  • Especificações de carga de trabalho, métricas e especificações de medição são componentes importantes dos testes de benchmark.
  • Diversas ferramentas e estruturas são usadas para realizar testes de benchmark de forma rápida e eficiente.
  • O teste de benchmark também é útil para dispositivos móveis.