• 2024-11-21

Os muitos tipos de métodos de teste de software

É TUDO SOBRE VOCÊ | MORADA (CLIPE OFICIAL)

É TUDO SOBRE VOCÊ | MORADA (CLIPE OFICIAL)

Índice:

Anonim

Antes de o software se tornar público, os programadores passam horas tentando resolver cada pequeno erro. Até que o produto satisfaça todas as partes interessadas, ele não estará disponível para uso comercial.

Grandes empresas de software, como o Google, são bem-sucedidas, apesar dos bugs de baixa prioridade em seus softwares, porque têm investidores pacientes e usuários fiéis. Empresas menores e startups, no entanto, não têm esse luxo. Os clientes esperam que os produtos façam o que reivindicam na página de vendas ou na documentação. Com tantas opções por aí, eles não pensarão duas vezes em embarcar se o produto gastar tempo e dinheiro. Portanto, o software é submetido a testes rigorosos antes do lançamento para:

  • destacar as diferenças entre o conceito original e a saída final
  • verificar se o software funciona da maneira planejada pelos designers
  • validar que o produto final atende aos requisitos do cliente
  • avaliar recursos e qualidade

Os testes seguem um modelo rigoroso para otimizar as habilidades, o tempo e o dinheiro da equipe, ao mesmo tempo em que fornecem às partes interessadas informações essenciais para levar o produto adiante. O objetivo é facilitar uma boa experiência do usuário final por meio de um forte programa de garantia de qualidade.Com as apostas tão altas, os gerentes de QA são alguns dos principais ganhadores do setor de tecnologia. O teste geralmente segue estas etapas:

  1. Análise de requisitos em que os gerentes descrevem um plano para implementar uma estratégia de teste adequada.
  2. Os testes começam e os resultados são analisados.
  3. Quaisquer defeitos são corrigidos e o software passa por testes de regressão - um sistema para verificar se o programa ainda funciona após as modificações.
  4. Um relatório de fechamento de teste detalha todo o processo e os resultados.

Os indivíduos podem se tornar testadores de software certificados por meio de organizações como a BCS, o Chartered Institute for IT, o ISTQB® (International Software Testing Qualifications Board) e a ASQ (antiga American Society for Quality).

Métodos de teste de software

A caixa preta e o teste de caixa branca são os dois métodos fundamentais para avaliar o comportamento e o desempenho do produto, mas também existem outros métodos.

  • Teste de caixa preta: Também chamado de teste funcional ou baseado em especificação, esse método se concentra na saída. Os testadores não estão preocupados com os mecanismos internos. Eles só verificam se o software faz o que deveria fazer. O conhecimento da codificação não é necessário e os testadores trabalham no nível da interface do usuário.
  • Teste de caixa branca: Este método utiliza o know-how de codificação como parte do procedimento de teste. Quando um produto falha, os testadores vão tão fundo no código quanto necessário para encontrar a causa. Os desenvolvedores de software fazem isso por si próprios, pois determinam como o produto deve funcionar. Testes baseados em estrutura e caixa de vidro são outros nomes para este método.
  • Teste estático: Os testadores examinam o código e a documentação do software, mas não executam o programa. Os testes estáticos começam no início do desenvolvimento do produto durante o processo de verificação.
  • Teste dinâmico: O software é executado com várias entradas e os testadores comparam as saídas com o comportamento esperado com este método.
  • Teste de interface gráfica com o usuário: Isso testa as características da GUI, como formatação de texto, caixas de texto, botões, listas, layout, cores, fontes, tamanhos de fonte e assim por diante. O teste de GUI é demorado e as empresas terceirizadas geralmente assumem a tarefa em vez de desenvolvedores.

Níveis de teste

Diferentes níveis de testes são usados ​​para identificar áreas de fraqueza e sobreposição em cada fase do ciclo de vida de desenvolvimento de software.

  • Teste unitário: Os desenvolvedores testam as partes mais básicas do código, como classes, interfaces e funções / procedimentos. Eles sabem como o código deve responder e podem fazer ajustes dependendo da saída.
  • Teste de componentes: Outros nomes são testes de módulo ou programa. É semelhante ao teste de unidade, mas contém um nível mais alto de integração. Os módulos do software são testados quanto a defeitos para verificar suas funções individuais.
  • Teste de integração: Isso identifica erros quando os módulos são integrados. Diferentes testes de integração são de baixo para cima, de cima para baixo e incrementais funcionais.
  • Teste do sistema: Componentes de um projeto são testados como um todo em diferentes ambientes com esse método. Ele cai sob o método de caixa preta e é um dos testes finais no processo. Ele determina se o sistema funciona como deveria para atender às necessidades de negócios e usuários.
  • Teste alfa: A equipe interna testa o software no site do desenvolvedor em um ambiente simulado ou real. Depois disso, os desenvolvedores corrigem erros e outros problemas.
  • Teste beta: Também conhecido como teste de campo, os clientes testam o produto em seus próprios sites em condições reais. Os clientes podem oferecer a um grupo de usuários finais a oportunidade de testar o software por meio de versões pré-lançamento ou beta. O feedback sobre possíveis melhorias é então enviado ao desenvolvedor.
  • Teste de aceitação: Também sob o escopo do teste de caixa preta, os clientes testam o software para descobrir se o desenvolvedor criou o programa com as especificações desejadas.

Tipos de teste

Diferentes tipos de testes de software são projetados para se concentrar em objetivos específicos.

  • Teste de instalação: O engenheiro de teste de software e o gerente de configuração realizam este teste para garantir que o usuário final possa instalar e executar o programa. Abrange áreas como arquivos de instalação, locais de instalação e privilégios administrativos.
  • Teste de desenvolvimento: Isso implementa uma variedade de estratégias sincronizadas para detectar e evitar defeitos. Inclui análise de código estático, revisões de código de peer, rastreabilidade e análise de métricas. O objetivo é reduzir riscos e economizar custos.
  • Testando usabilidade: A experiência do usuário fica sob os holofotes com este teste. Ele mede quão bem a GUI é projetada e sua facilidade de uso. O teste verifica a precisão e eficiência das funções e as respostas emocionais dos sujeitos de teste.
  • Teste de sanidade: Isso indica se o software vale o tempo e o custo para continuar os testes. Se houver muitas falhas, os testes mais agressivos não serão seguidos.
  • Teste de fumaça: O teste de fumaça revela falhas básicas que são graves o suficiente para impedir a liberação. Quando isso é realizado em uma nova compilação, é chamado de teste de verificação de compilação.
  • Teste de regressão: Quando o sistema é modificado, o teste de regressão monitora o comportamento inesperado. Aponta efeitos adversos em módulos ou componentes.
  • Teste destrutivo: Os testadores inserem entradas anormais e discernem a capacidade do software de gerenciar entradas inesperadas. Isso mostra aos desenvolvedores como o programa é robusto no gerenciamento de erros.
  • Teste de recuperação: Quando o hardware ou outras funções falham, este teste mostra como o software pode recuperar e continuar a operação.
  • Teste automatizado: Isso executa funções difíceis de implementar manualmente. Ele usa um software específico para executar os testes e fornecer dados sobre resultados reais versus resultados esperados.
  • Teste de compatibilidade: O software deve ser executado em diferentes ambientes de computação, portanto, isso verifica a compatibilidade com sistemas diferentes. Por exemplo, o software funciona com vários sistemas operacionais e navegadores da web?
  • Teste de performance: Este é um teste aprofundado que examina o desempenho do software em diferentes cenários. Informações sobre capacidade de resposta, estabilidade, alocação de recursos e velocidade são coletadas. Além disso, subtestes como volume, capacidade e teste de pico desempenham um papel nesse processo.
  • Teste de segurança: Isso mede a capacidade do software de proteger a segurança dos usuários. Isso significa funções de autorização, autenticação, confidencialidade, integridade, disponibilidade e não-repúdio.
  • Testes de acessibilidade: Isso não é o mesmo que o teste de usabilidade. Isso determina até que ponto os usuários de diferentes habilidades - incluindo dificuldades de aprendizagem e físicas, podem usar o software.
  • Internacionalização e teste de localização: Os resultados mostram como o software pode se adaptar a diferentes idiomas e demandas regionais. Isso inclui adicionar componentes para locais específicos e traduzir texto.

Artigos interessantes

Mensagem de e-mail de renúncia de duas semanas

Mensagem de e-mail de renúncia de duas semanas

Use este exemplo de mensagem de e-mail de carta de demissão e adapte-o para adequar-se às suas próprias circunstâncias quando estiver fornecendo ao seu empregador aviso prévio de duas semanas.

Duas semanas de aviso de carta de renúncia

Duas semanas de aviso de carta de renúncia

Exemplos de carta de demissão para usar para dar duas semanas de antecedência ao se demitir do emprego, mais cartas de demissão de amostra e dicas sobre como se demitir.

A Chamada Nacional de Serviço é um Alistamento de Dois Anos?

A Chamada Nacional de Serviço é um Alistamento de Dois Anos?

O National Call to Service permite que os recrutas militares escolham períodos de serviço ativo de dois ou três anos, dependendo do trabalho para o qual se qualificam.

Vinculando Remuneração de Vendas a Quotas de Vendas

Vinculando Remuneração de Vendas a Quotas de Vendas

Fazer com que sua equipe de vendas atenda ou supere suas metas pode ser tão simples quanto configurar uma estrutura de recompensas. Aprenda sobre como amarrar a compensação às cotas.

Tipos de cartas de apresentação com amostras

Tipos de cartas de apresentação com amostras

Aprenda sobre os tipos mais comuns de cartas de apresentação, incluindo aqueles para aplicativos, referências, cartas de interesse, proposições de valor e muito mais.

Tipos de Altitudes na Aviação

Tipos de Altitudes na Aviação

Aviadores usam várias medidas de altitude diferentes para determinar fatores como altura acima do solo, densidade do ar e distância a outros planos.