DIFERENÇA ENTRE TESTE DE CARGA, STRESS E PERFORMANCE
Teste de Carga
O Teste de Carga é aquele onde o volume de gerado pela ferramenta de geração de carga é crescente no decorrer do tempo. O objetivo principal é encontrar o limite de capacidade da aplicação e identificar qual o limitante (codificação, hardware, tempo de resposta excessivo). Da mesma forma que os outros testes, não é objetivo do teste de carga encontrar problemas funcionais na aplicação.
Algumas respostas que podem ser encontradas com um teste de carga são:
Throughput
Limite de capacidade de hardware
Requisitos de balanceamento de carga
Um entregável interessante de um projeto com o teste de carga é a quantidade de transações simultâneas, para sistemas baseados em serviços (web services, por exemplo), e qual a quantidade de usuários simultâneos, para sistemas de interação com o usuário (como um site).
Teste de Stress
Em um teste de stress, além de uma grande carga disparada contra a aplicação, alguns cenários de crashda aplicação são testados, com o objetivo também de determinar a capacidade de recuperação e estabilidade do sistema. Um exemplo é a retirada de um nó do cluster de servidores de aplicação ou uma eventual indisponibilidade do banco de dados.
Um subtipo do teste de stress são os spike tests, também chamados de storm. Basicamente, nesse cenário é executada uma quantidade massiva de uma determinada funcionalidade, para determinar como a aplicação se comporta. Por exemplo, quando há uma troca de turno em um sistema de call center e todos os novos usuários têm que fazer login ao mesmo tempo.
Após todos os cenários, em uma aplicação robusta e estável, é avaliado o tempo que a aplicação retorna para uma condição normal de utilização sem nenhuma intervenção.
Teste de Performance
O conceito de testes de performance (em português desempenho) é o mais abrangente e genérico de todos. Ele é usado para referenciar qualquer tipo de avaliação que esteja sendo feito em uma aplicação ou ambiente e seu resultado não é simples como “sucesso” ou “falha”.
Os resultados dos testes são usados para determinar um padrão de comportamento e capacidade da aplicação que está sendo testada. Esses limites e padrões são chamados de baseline e servem de referência para testes de carga, stress, spike ou outros que estejam sendo planejados/executados no ambiente.
Fonte: http://jmeter.com.br/2013/04/qual-a-diferenca-entre-teste-de-stress-performance-e-carga/
Teste de Segurança
O Teste de Segurança tem como meta garantir que o funcionamento da aplicação esteja exatamente como especificado. Verifica também se o software se comporta adequadamente mediante as mais diversas tentativas ilegais de acesso, visando possíveis vulnerabilidades. Para isso, testa se todos os mecanismos de proteção embutidos na aplicação de fato a protegerão de acessos indevidos.
É muito comum que as aplicações se tornem alvo de sujeitos que buscam provocar ações que possam prejudicar ou, até mesmo, beneficiar pessoas. Em função de situações como estas, o Teste de Segurança propõe demonstrar se a aplicação faz exatamente o que deve fazer ou se a aplicação não faz o que não deve ser feito.
A execução do Teste de Segurança possibilita que dúvidas sobre prováveis vulnerabilidades do software sejam sanadas. Pode auxiliar também na definição de um plano de contingência, visando determinar qual precaução será tomada contra os possíveis ataques.
Fonte:https://www.devmedia.com.br/teste-de-seguranca-agregando-confianca-ao-software/27792