Muitas vezes nos preocupamos tanto com os Testes Funcionais (principalmente quem faz uso de metodologias ágeis) que não reservamos tempo para testes não funcionais como testes de segurança, de desempenho, de usabilidade entre outros. Veja como os testes não funcionais são importantes.
[Iniciante] - Testes Unitários com WP-UNIT no Wordpress
A importância dos testes não funcionais
1. 15/5/2014 A importância dos Testes não Funcionais | Roger Ritter
http://rogerritter.com.br/?p=48 1/7
Roger Ritter
Software Engineering, Software Quality and Projects
A importância dos
Testes não Funcionais
Muitas vezes nos preocupamos tanto
com os Testes Funcionais
(principalmente quem faz uso de
metodologias ágeis) que não
reservamos tempo para testes não
funcionais como testes de segurança,
de desempenho, de usabilidade entre
outros.
Foi exatamente isto que muitas
pessoas pensaram quando viram o
‘escândalo’ (no bom sentido) causado
por Marco Agner através das suas
descobertas de falhas no site
ingressos.com.
Em seu blog ele publicou em 03 de
maio de 2014, falhas de segurança no
site do serviço prestado pela empresa
Ingressos.com. caracterizando como
falhas críticas por dois motivos:
Expõem informações de clientes;
Coloca em risco o principal
serviço oferecido;
Estas falhas, apensar de extremamente
Bem vindo ao
RogerRitter.com.br!
Meu nome é Roger
Ritter e trabalho com
qualidade e teste de
software desde 2010,
atualmente no Dpto
de Informática na
Universidade de Passo
Fundo.
Creio nos valores do
desenvolvimento ágil
de software , na sua
gestão e em seu
empirismo. Que a
automação de teste
possa ajudar o
trabalho do testador e
que a simplificação e
uma boa
comunicação muitas
vezes é o melhor
caminho para alguns
dos problemas da
engenharia de
software.
uPlace AvaLiter Sobre
2. 15/5/2014 A importância dos Testes não Funcionais | Roger Ritter
http://rogerritter.com.br/?p=48 2/7
graves, nada mais é que descobrir o ID
de um parâmetro GET recebido por um
arquivo .php ou outro no qual o autor
não mencionou.
Explicando melhor o comando GET,
basicamente é você ter uma URL
parecida com isto:
http://exemplo.com.br/arquivoexemplo.php?
nome=ROGER
E alterar os valores correspondentes
com o que você procura, no exemplo
acima estou buscando os dados de
‘ROGER’, se eu quiser ver os dados do
Paulo, alteramos para ‘PAULO’ ao invés
de ‘ROGER’, se eu quiser ver os dados
da Maria, então portanto, ‘MARIA’ ao
invés de ‘ROGER’.
Ex.: http://exemplo.com.br/arquivoexemplo.php?
nome=PAULO
Ex.: http://exemplo.com.br/arquivoexemplo.php?
nome=MARIA
Agora, a descoberta do autor que foi a
grande jogada, veja como era banal:
Esta é a impressão de um ingresso, isto
mesmo, ingresso!
Procurar em RogerRitter.com.br
Tags
Falha de Software
Relato de
Campo Testes
Não Funcionais Testes
Ágeis
Tópicos
recentes
A importância
dos Testes não
Funcionais
Minhas
Experiências em
Testes Ágeis
Arquivos
maio 2014
abril 2014
3. 15/5/2014 A importância dos Testes não Funcionais | Roger Ritter
http://rogerritter.com.br/?p=48 3/7
Perceba acima o ‘ID’ com o
número: 290420142855736335945869
0931, e agora veja os dados da compra
que ele realizou:
Buscando o ID novamente
então: 290420142855736335945869
0931, logo na primeira visualização já
percebe-se que os primeiros dígitos
são a data e os últimos dígitos são a
hora que o usuário efetuou a compra.
Portanto agora faltava descobrir os
outros números que foram
encontrados no código, como mostra o
autor através de uma imagem:
4. 15/5/2014 A importância dos Testes não Funcionais | Roger Ritter
http://rogerritter.com.br/?p=48 4/7
Ok, código descoberto, alterasse para o
código de uma outra pessoa e pimpa!
Abre o ingresso meu, seu, de quem
quiser. Além disto o autor destaca que
poderia alterar o código ilustrado na
imagem acima e sem informar os
outros dígitos que também funcionava.
O post original de Marco Agner está
disponível através deste link. (Acessado
em 09/05/2014)
Ou em forma de impressão (.pdf)
através deste link.
Repercussão
A falha descoberta por Agner teve
grande repercussão especialmente nos
sites da INFO e EXAME onde
impulsionaram a notícia do feito do
autor.
Veja na INFO através deste link.
Veja na EXAME através deste link.
Equipes Ágeis x Testes
não funcionais
Equipes ágeis inicialmente tendem a
5. 15/5/2014 A importância dos Testes não Funcionais | Roger Ritter
http://rogerritter.com.br/?p=48 5/7
garantir a funcionalidade dos
incrementos para depois atacar as não
funcionalidades como segurança e
desempenho, por exemplo. Isto
quando o ‘Líder de Testes’ traça este
tipo de estratégia.
Este assunto já é bastante antigo, Scott
Ambler causou muita discussão
quando ele declarou em 2008: “O
conceito de product backlog do Scrum
funciona bem para requisitos funcionais
simples, mas… se torna insuficiente para
requisitos não-funcionais e restrições de
arquitetura.” através deste artigo no site
Dr.Dobb’s.
Seu artigo também teve bastante
repercussão naquela época
especialmente no Scrum Development
Yahoo Group (Grupo de
Desenvolvimento em Scrum do Yahoo)
no qual uma das soluções para este
tipo de problema foi que os requisitos
deste tipo seriam tratados na
‘Definição de Pronto’ do time. Isto é,
cada história não é considerada pronta
até que tenha sido determinado que a
implementação da estória satisfaça o
requisito não funcional, de
desempenho, por exemplo. Esta análise
seria feita através de um processo de
revisão e/ou testes de carga.
Conclusão
Testes não funcionais são sempre
muito importantes, como Agner nos
mostrou, o que ocorre é que algumas
empresas ainda não perceberam a
importância da Qualidade de Software
6. 15/5/2014 A importância dos Testes não Funcionais | Roger Ritter
http://rogerritter.com.br/?p=48 6/7
em seu processo de desenvolvimento,
empresas com fluxo muito intenso
como a Ingresso.com, no exemplo de
Agner, deve-se realizar testes não
funcionais para não deixar lacunas
como o desenvolvedor encontrou.
Portanto é provado que existem
problemas na equipe de Qualidade de
Software desta empresa.
Provavelmente um usuário leigo não
encontraria as falhas que o
desenvolvedor encontrou, mesmo
assim ainda continua sendo uma falha
encontrada e repercutida no ambiente
de produção no qual os custos desta
falha serão bastante alto, pois não
pode-se dizer que a utilização dos
serviços desta empresa são seguros na
presente data.
Considero o teste funcional o mais
importante pois antes de realizar
qualquer validação sobre um
incremento devemos saber se ele
cumpre os requisitos estabelecidos, ao
efetuar testes não funcionais a um
incremento no qual seus requisitos não
foram validados corre-se o risco da
entrega ser falha e consequentemente
um incremento não utilizável. Portanto,
antes de qualquer teste, sugiro o teste
funcional para após deste providenciar
os testes não funcionais.
Concorda com isto? (comente abaixo)
Posted on 13 de maio de 2014 by roger
Leave a comment
Posted in Testes Não Funcionais
Tagged Falha de Software, Relato de Campo, Testes Não
7. 15/5/2014 A importância dos Testes não Funcionais | Roger Ritter
http://rogerritter.com.br/?p=48 7/7
Minhas Experiências
em Testes Ágeis
Funcionais
Edit
Deixe uma resposta
Conectado como roger. Desconectar?
Comentário
Você pode usar estas tags e atributos de HTML: <a
href=""title=""><abbrtitle=""><acronym
title=""><b><blockquotecite=""><cite><code>
<deldatetime=""><em><i><qcite=""><strike>
<strong>
Publicar comentário
Criado com Wordpress e hospedado com uPlace.com.br Início