| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/04/2010 21:25:08
|
Nykolas Lima
Virtual Machine Man
![[Avatar]](/images/avatar/95f8fbf9e0653a1c0fee3572b5a25042.jpg)
Membro desde: 07/07/2008 13:10:41
Mensagens: 606
Offline
|
Vejo muito falar sobre testes automatizados...Testes unitários, testes integrados e etc.
Aonde trabalho estes testes automatizados não são feitos, deixando os testes todos serem feitos na mão.
Já cheguei a questionar sobre a possibilidade de fazer estes testes e a resposta que tive foi que tais testes são difíceis de serem implementados em sistemas web, por terem muitas funcionalidades que dependem de informações que são adquiridas pela navegação. (usuário logado e etc).
Penso que deve ter algum jeito prático e produtivo de realizar estes testes.
A implementação de testes automatizados em sistemas web é realmente difícil?
Quais ferramentas podem vocês recomendam para a implementação destes testes em um sistema no ambiente web?
Abraços
|
Blog: http://nykolaslima.wordpress.com |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/04/2010 21:43:02
|
RafaelViana
GUJ Master
Membro desde: 23/03/2008 18:56:02
Mensagens: 1257
Localização: Venâncio Aires/RS
Offline
|
Também cada dia mais sinto a necessidade de abandonar os testes a mão e automatizar o processo, porém acho complicado escrever testes ( aos poucos preciso aprender ).
Mas para ambientes WEB já chegou a olhar o SELENIUM?
|
Rafael Rodrigues Viana
Estudando Java e Flex
Blog: http://www.cauirs.com.br/rafael/
"Any fool can write code that a computer can understand. Good programmers write code that humans can understand." |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/04/2010 21:47:41
|
Nykolas Lima
Virtual Machine Man
![[Avatar]](/images/avatar/95f8fbf9e0653a1c0fee3572b5a25042.jpg)
Membro desde: 07/07/2008 13:10:41
Mensagens: 606
Offline
|
RafaelViana wrote:Também cada dia mais sinto a necessidade de abandonar os testes a mão e automatizar o processo, porém acho complicado escrever testes ( aos poucos preciso aprender ).
Mas para ambientes WEB já chegou a olhar o SELENIUM?
Nunca cheguei a fazer realmente os testes automatizados, mas já vi como o selenium funciona...pareceu bem legal.
O que eu queria era mesmo opiniões sobre testes automatizados na web, se eles realmente são difíceis de se implementar, se valem a pena e quais ferramentas recomendadas para implementar esses testes...
valeu a resposta Rafael...
|
Blog: http://nykolaslima.wordpress.com |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/04/2010 22:10:00
|
thiagobernardo_si
Debugger
![[Avatar]](/images/avatar/c1ba099b22d65b3903891b885dc686f9.jpg)
Membro desde: 20/06/2006 13:30:59
Mensagens: 64
Localização: São Paulo
Offline
|
Cara já cheguei a utilizar o IMACROS do firefox... Ele quebra um galho para testes repetitivos web, mas só para quebrar o galho...
flw abs...
|
"The only easy day was yesterday" |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/04/2010 23:05:29
|
Andre Brito
JWizard
Membro desde: 21/07/2007 17:44:31
Mensagens: 2485
Localização: Paraná
Offline
|
Pras regras de negócio (aquele negócio mais server-side) acho que TDD dá pra ser usado tranquilamento (digo só com jUnit).
Pras telas, o Selenium dá conta.
Pra integração, você pode tanto usar o Selenium (testando o 'na mão') como mock objects, apesar de ser mais complicado.
|
Como organizar o GUJ.
Meu Twitter.
Meu blog.
Future proofing means making code easy to change, not trying to anticipate every possible way your code might need to change. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/04/2010 01:03:52
|
javamaniaco
Java Ninja
Membro desde: 04/04/2007 19:21:36
Mensagens: 268
Offline
|
Andre Brito wrote:Pras regras de negócio (aquele negócio mais server-side) acho que TDD dá pra ser usado tranquilamento (digo só com jUnit).
Pras telas, o Selenium dá conta.
Pra integração, você pode tanto usar o Selenium (testando o 'na mão') como mock objects, apesar de ser mais complicado.
++
|
"Iniciante sim, mas ignorante jamais."
"Seu corpo não pode estar onde sua mente SUBCONSCIENTE nunca esteve. Aprenda a leva-la até lá." |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/04/2010 08:23:50
|
saulods
Java Ninja
![[Avatar]](/images/avatar/992293aa502a94d9d76d1d0313c00873.jpg)
Membro desde: 13/09/2007 15:28:22
Mensagens: 299
Offline
|
Selenium é muito bom, revolve.
Agora se vc quiser algo mais punk, temos o Jmeter.
This message was edited 1 time. Last update was at 26/04/2010 08:24:04
|
"...Quem esconde Conhecimento, esconde a si próprio!!!"
VEJA ::::
http://www.pregadoresdotelhado.org.br/pregacao/index.php
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/04/2010 08:30:21
|
Gustavokt
JavaBaby
![[Avatar]](/images/avatar/ff3ec3c8e2728bb27462a546ea460bb4.png)
Membro desde: 01/09/2009 11:09:41
Mensagens: 95
Offline
|
saulods wrote:Selenium é muito bom, revolve.
Agora se vc quiser algo mais punk, temos o Jmeter.
Depende do seu sistema... Se houver muito javascript, código gerado, talvez fique mais chato de fazer os testes...
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/04/2010 09:05:31
|
thiagomont
JavaChild
Membro desde: 02/05/2007 00:49:04
Mensagens: 139
Offline
|
Blz?
Depende do tipo de teste que você quer fazer.
Selenium é uma ótima opção para testes integrados.
JUnit para testes unitários já é até uma tradição em java.
já o Jmeter é utilizado principalmente para testes de stress e carga. Ele não é utilizado para verificar se uma regra de negócio está certa e sim se pra ver se o sistema rodando em um determinado hardware com uma configuração estabelecida aguenta o tranco.
Infelizmente não tive oportunidade (ou seja, permissão para gastar tempo) para criar testes unitários automatizados com Junit e testes integrados com Selenium, mas cheguei a usar o Jmeter e realmente é uma ferramenta fantástica. É umas daquelas ferramentas que todo desenvolvedor deve conhecer para melhorar suas aplicações.
espero ter ajudado...
flw
|
Thiago Amaral Monteiro
Analista de Sistemas - SERPRO
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/04/2010 09:22:22
|
Leozin
JWizard
![[Avatar]](/images/avatar/5dca4c6b9e244d24a30b4c45601d9720.png)
Membro desde: 18/06/2005 21:01:26
Mensagens: 2310
Localização: São Paulo/SP
Offline
|
Pra mim, sistema sem testes já baixa a qualidade do mesmo em 50%
Dificuldade em achar bugs, manutenção complicada e "medo" de refactoring são uns dos motivos pelo qual eu penso assim.
Só que é difícil implantar testes numa equipe sem conhecimento do mesmo, principalmente se você quiser usar TDD: É uma maneira diferente de você codificar, "ver o mundo" da programação com outros olhos.
Pra um sistema ficar bem testado e automatizado, o que eu uso e faço geralmente é:
1- Testes unitários com TestNG
2- Testes de integração também com o TestNG, mas isso vai depender do sistema, pois algumas vezes é necessário usar mocks para os seus requests ou até mesmo fazer testes a partir da camada mais alta, logo abaixo da camada de view (Se for JSF começa-se pelos Backing Beans, se for Struts nos seus Actions etc).
3- Testes de carga com o JMeter (isso, honestamente, raramento eu faço)
4- Cobertura nos testes unitários com o Emma (no eclipse eu uso o EclEmma)
5- Pra finalizar, testes funcionais com o Selenium é legal também.
Você também pode utilizar o Selenium direto nos seus testes de integração, pois ele tem uma API que você coloca no seu código Java e ele faz todos o processo gravado no código! Em um pseudo-código-aportuguesado, ficaria assim:
Dicas: Deixando um servidor de Integração Continua rodando, (e também seguindo o processo/metodologia de Integração Continua), fica até mais legal pra trabalhar com esses testes pois como há builds frequentes, é rápido ver se algo quebrou ou não a cada commit/push no seu svn/git.
|
http://www.leozin.com.br/blog |
|
|
 |
|
|