Automação e Gerenciamento de Testes: Aumentando a Produtividade com as Principais Soluções Open Source e Gratuitas

imagem de Cristiano Caetano

Desenvolver software de qualidade não é mais um requinte para poucos, transformou-se num fator de competitividade num mercado cada vez mais exigente. O filósofo Nietzsche, no século passado, alertava: "Com o aumento da competição, a qualidade se torna mera propaganda. Vence aquele que melhor engana". Essa receita é muito simples e fácil de seguir, todavia, quem tomar esse tipo de postura estará fadado ao fracasso. Nos dias de hoje, a qualidade tornou-se requisito imprescindível para garantir a sobrevida de um software no mercado.

Podemos concluir que as empresas mais competitivas são as empresas que trabalham sob a ótica da melhoria contínua dos processos para aumentar a qualidade do processo de desenvolvimento e, conseqüentemente, aumentar a qualidade do produto final. Neste contexto, devemos destacar adoção crescente de ferramentas para dar suporte ao processo de melhoria contínua. Estas ferramentas servem para dar suporte a todas as atividades relacionadas ao ciclo de vida de desenvolvimento de software: da concepção à implantação.

Na tentativa de dar suporte as pessoas interessadas nesse assunto, eu escrevi o livro "Automação e Gerenciamento de Testes: Aumentando a Produtividade com as Principais Soluções Open Source e Gratuitas". A proposta deste livro é apresentar as ferramentas Open Source e gratuitas essenciais para a gestão e automação de testes de software, sem no entanto, esgotar o assunto. O livro tem o propósito de apresentar um catálogo das melhores opções disponíveis atualmente e os seus principais recursos. O objetivo principal deste livro é fornecer informações e subsídios a fim de que o leitor seja capaz de utilizar os conhecimentos adquiridos para aprofundar-se no assunto e escolher a solução que melhor atenda a sua necessidade.

A organização das ferramentas do livro segue a filosofia apresentada pelo "Guide to the CSTE Common Body of Knowledge" do QAI que diz o seguinte: apesar de não existir uma categorização amplamente difundida das ferramentas de teste, a experiência tem mostrado que elas são normalmente agrupadas em 8 áreas distintas:

  1. Ferramentas de automação de testes de regressão;
  2. Ferramentas para gestão de defeitos;
  3. Ferramentas para testes de Performance/Stress;
  4. Ferramentas manuais;
  5. Ferramentas de rastreabilidade;
  6. Ferramentas de cobertura de código;
  7. Ferramentas para gestão de testes;
  8. Ferramentas de apoio à execução dos testes.


Dessa forma, a figura abaixo apresenta a relevância de cada tipo de ferramenta apresentada neste livro em relação às fases de um ciclo de vida de desenvolvimento de software:


Figura 1: Relevância de cada tipo de ferramenta apresentada neste livro em relação às fases de um ciclo de vida de desenvolvimento de software.

Além da apresentação das ferramentas agrupadas por áreas, o livro também aborda os seguintes temas:

  • Ferramentas Open Source Similares;
  • Ferramentas Comerciais Similares;
  • Repositórios de Ferramentas Open Source;
  • Ferramentas de Apoio;
  • Referências sobre Teste de Software;
  • Bibliografia Recomendada.

Por mais abrangente que sejam as categorias e ferramentas apresentadas neste livro, seria ingênuo pensar que ele ofereceria soluções que atendessem a necessidade de todos os leitores, afinal, muitos de vocês devem precisar de soluções específicas para a realização de testes de diversos tipos e nas mais diversas plataformas. Pensando neste cenário, fiz uma pesquisa extensa a fim de trazer para o leitor uma lista detalhada com os maiores e melhores repositórios de ferramentas Open Source do mundo. Assim, você poderá pesquisar a solução que se enquadre na sua necessidade no momento que você quiser.

O escopo do livro foi definido tendo em mente as ferramentas realmente essenciais; outro ponto que pesou muito foi o tamanho das comunidades apoiando e suportando estas ferramentas. Ferramentas com grandes comunidades e liberações freqüentes foram privilegiadas em relação às outras. De qualquer forma, me sinto na obrigação de compartilhar com o restante da comunidade de testes brasileira, a listagem das melhores ferramentas com base na pesquisa realizada para a criação do livro. As ferramentas são agrupadas por área e estão listadas na Tabela 1. Sinta-se à vontade para procurar uma ferramenta que atenda as suas necessidades. Não obstante, como o mundo Open Source evolui numa velocidade incrível, foi criado um MindMap dinâmico que será atualizado freqüentemente com as melhores opções disponíveis em cada área. O MindMap está disponível gratuitamente no seguinte endereço:

http://www.mindomo.com/view?m=d1535d37f8b0aa6df765a1db90bfa317

Você achou essas informações úteis? Suporte o autor, compre o livro. Este livro será unicamente comercializado por meio eletrônico (e-book). Esta foi uma decisão pessoal do autor para viabilizar a venda do livro por um preço justo a fim de permitir que todas as pessoas interessadas possam compra-lo. Para comprar o livro, ler a resenha, o sumário e um preview de várias páginas visite o seguinte endereço:

http://www.linhadecodigo.com.br/EBook.aspx?id=2951

Gestão de projetos ProjectKoach http://www.projectkoach.com/
php-collab http://www.php-collab.org
GanttProject http://ganttproject.biz/
]project-open[ http://www.project-open.com/
OpenWorkbench http://www.openworkbench.org/
XPlanner http://www.xplanner.org/
WebCollab http://webcollab.sourceforge.net/
Mindquarry http://www.mindquarry.com/
Testes de performance OpenSTA http://www.opensta.org/
JMeter http://jakarta.apache.org/jmeter/index.html
WEBLOAD http://www.WEBload.org/
The Grinder http://grinder.sourceforge.net/
Gestão de testes TestLink http://www.teamst.org/
QaManager http://qamanager.sourceforge.net/
rth http://www.rth-is-quality.com
TestMaster http://testmaster.sourceforge.net/
Testitool http://majordojo.com/testitool/
Test Case Web (TCW) http://tcw.sourceforge.net/
Testopia http://www.mozilla.org/projects/testopia/
Gestão de defeitos Mantis http://www.mantisbt.org/
Bugzilla http://www.bugzilla.org/
Scarab http://scarab.tigris.org/
BugNET http://www.bugnetproject.com/
TRAC http://trac.edgewall.org/
Gestão de Requisitos OSRMT http://www.osrmt.com/
Tiger PRO http://www.seecforum.unisa.edu.au/SEECTools.html
Xuse http://xuse.sourceforge.net/
REM (REquisite Management)
http://www.lsi.us.es/descargas/descarga_programas.php?id=3
TRUC http://sourceforge.net/projects/truc
Plandora http://plandora.sourceforge.net/
Jeremia http://jeremia.sourceforge.net/
Testes Funcionais Selenium (WEB) http://www.openqa.org/selenium/
actiWATE (WEB) http://www.actiwate.com/
Marathon (Java Swing) http://www.marathontesting.com/marathon/
Watir (WEB) http://wtr.rubyforge.org/
Canoo WEBTest (WEB) http://WEBtest.canoo.com/
Apodora (WEB) http://www.apodora.org/
Abbot (Java Swing) http://abbot.sourceforge.net
SoapUI (WEBServices) http://www.soapui.org/
SOAPSonar Personal Edition (WEBServices) http://www.crosschecknet.com/
LISA WS-Testing (WEBServices) http://www.itko.com/site/products/lisa/ws_testing.jsp
Squish for KDE (Linux) http://www.froglogic.com
SharpRobo (WinForm .NET) http://confluence.public.thoughtworks.org/display/SHRO/Home
FitNesse http://fitnesse.org/
Controle de versões

TortoiseCVS http://www.tortoisecvs.org/
WinCVS http://www.wincvs.org/
Subversion http://subversion.tigris.org/
darcs http://darcs.net/

 

Comentários

Ferramentas utilizadas

Na empresa que trabalho, utilizamos o TRAC para gestão de defeitos com algumas otimizações para o nosso dia-a-dia e em conjunto com o Subversion para o controle de versão.

Gostaria de saber se alguém conhece alguma ferramenta opensouce para testar o meu site em vários browsers.

[],

 

 

 

Ferramenta de gestão de defeitos e gestão de execução

Sr(s), gostaria de compartilhar minha experiencia e meu dia a dia com todos. Estou utilizando a ferramenta testlink para gestão de execução e o mantis para gestão de defeitos ambas  integradas e estamos tendo grande sucesso. Como são ferramentas open ,  no mantis estamos moldando da nossa forma para atender nossas métricas.Temos scripts acessando o mysql e com esses fazemos graficos que tem nos ajudado bastante a detectar nossos principais problemas.

Muito bom!

Cristiano!

Começamos a utilizar o RedMine para controle de bugs, é uma ferramenta similar ao TRAC mas é mais completa e muito, muito fácil de usar. 

Abraços,

 

Tatiane Almeida Ribeiro

Analista de Testes

imagem de Solange Ferreira

Excelente trabalho Caetano,

Excelente trabalho Caetano, será de grande ajuda para nossa comunidade, sem dúvida.

Gostei da idéia da Priscila e quero dar a minha contribuição.

Estamos utilizando a ferramenta HP Quality Center rescentemente e espero contribuir com o TestExpert.

Att.;

 Solange Ferreira

 

Parabéns

Ótimo post !!!

Muito bom para a comunidade de teste.

imagem de Priscila

Sugestão

Cristiano, mais uma vez parabéns por colocares um assunto muito útil para a comunidade de testes.

Complementando esse teu post, tenho uma sugestão. Como é comum o pessoal socilitar sugestões de ferramentas, ou então dicas, sugiro que, para cada ferramenta listada, exista algum tipo de indicação de contato de quem a utiliza. Desta forma, é mais uma facilidade para quem está decidindo qual ferramenta utilizar, já que para cada categoria, listates várias.

Poderia ser algum tipo de depoimento, ou mesmo informações sobre o usuário da ferramenta, como "sou fulano, uso a ferramenta x para a gestão de testes da nossa empresa y, numa equipe de xx testadores, com tal realidade...". Enfim, não é um trabalho fácil e teria que ser continuamente atualizado pelas próprias pessoas que as usam, mas acho que seria de grande valia.

Abraço,

Priscila Coelho Blauth