| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 29/05/2008 15:30:27
|
lavh
GUJ Master
Membro desde: 30/07/2006 16:09:55
Mensagens: 1311
Offline
|
Tenho um sistema totalmente back-end que expõe beans EJB para seus clientes.
Existem algumas integrações dentro deste sistema, como por exemplo um bean EJB
chamar um outro bean EJB em outro módulo.
Gostaria de saber como poderia fazer testes integrados deste sistema simulando o
comportamento do container EJB, mas "mockando" a camada de DAO.
Gostaria de testar o Bean A chamando o Bean B, inclusive vendo se o Bean B cria uma nova
transação ou mantém a transação do Bean A, porém, eu não quero usar o banco de dados, porque
fazer teste usando banco de dados é um saco, ainda mais com o tamanho da nossa base aqui.
Alguém já precisou fazer algo parecido? Aceito sugestões!
[]'s
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 29/05/2008 16:23:04
|
andre_salvati
GUJ Ranger
Membro desde: 02/06/2005 16:28:38
Mensagens: 939
Offline
|
lavh wrote:
Gostaria de saber como poderia fazer testes integrados deste sistema simulando o
comportamento do container EJB, mas "mockando" a camada de DAO.
[]'s
Pq vc não usa o container ao invés de simulá-lo!?
|
Ajude na criação do StackOverflow em português!!!
http://area51.stackexchange.com/proposals/23539/software-development-in-portuguese?referrer=tI8Uon7RDszY236h5e0UuA2
http://www.empresadigital.inf.br
http://twitter.com/afsalvati |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 29/05/2008 16:30:22
|
lavh
GUJ Master
Membro desde: 30/07/2006 16:09:55
Mensagens: 1311
Offline
|
Taz wrote:
lavh wrote:
Gostaria de saber como poderia fazer testes integrados deste sistema simulando o
comportamento do container EJB, mas "mockando" a camada de DAO.
[]'s
Pq vc não usa o container ao invés de simulá-lo!?
Porque eu queria poder executar estes testes sem a necessidade de ter um ambiente com servidor de aplicação up
Os testes poderiam ser executados via maven por exemplo.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 29/05/2008 16:36:11
|
cmoscoso
Virtual Machine Man
Membro desde: 23/10/2007 10:08:29
Mensagens: 687
Offline
|
lavh wrote:
Taz wrote:
lavh wrote:
Gostaria de saber como poderia fazer testes integrados deste sistema simulando o
comportamento do container EJB, mas "mockando" a camada de DAO.
[]'s
Pq vc não usa o container ao invés de simulá-lo!?
Porque eu queria poder executar estes testes sem a necessidade de ter um ambiente com servidor de aplicação up
Os testes poderiam ser executados via maven por exemplo.
Ué, mas EJBs são gerenciados pélo container, e sem ele você teria que mockar os EJBs tb.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 29/05/2008 16:51:57
|
lavh
GUJ Master
Membro desde: 30/07/2006 16:09:55
Mensagens: 1311
Offline
|
cmoscoso wrote:
lavh wrote:
Taz wrote:
lavh wrote:
Gostaria de saber como poderia fazer testes integrados deste sistema simulando o
comportamento do container EJB, mas "mockando" a camada de DAO.
[]'s
Pq vc não usa o container ao invés de simulá-lo!?
Porque eu queria poder executar estes testes sem a necessidade de ter um ambiente com servidor de aplicação up
Os testes poderiam ser executados via maven por exemplo.
Ué, mas EJBs são gerenciados pélo container, e sem ele você teria que mockar os EJBs tb.
Então, foi isso que eu perguntei! Eu vi que tem um EJBMock, mas parece que o projeto foi descontinuado.
Eu vou usar JBoss Embarcado (http://www.guj.com.br/posts/list/79143.java) mesmo + EasyMock para mockar os meus DAOs e eu injeto eles na hora do teste via spring e sucesso.
Valeu Pessoal.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 29/05/2008 17:16:19
|
Adolfo Rodrigues
Java Ninja
![[Avatar]](/images/avatar/5c9dc137c4e9543d7e4001d7bdef7413.jpg)
Membro desde: 18/04/2007 20:02:52
Mensagens: 270
Localização: Sampa
Offline
|
Tente dar uma olhada nos projetos Cactus e DBUnit
jakarta.apache.org/cactus/index.html
www.dbunit.org/
Edited: faltaram as tags URL
This message was edited 1 time. Last update was at 29/05/2008 17:17:18
|
http://www.adolfosousa.com.br/blog |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 29/05/2008 22:20:11
|
andre_salvati
GUJ Ranger
Membro desde: 02/06/2005 16:28:38
Mensagens: 939
Offline
|
lavh wrote:
Porque eu queria poder executar estes testes sem a necessidade de ter um ambiente com servidor de aplicação up
Os testes poderiam ser executados via maven por exemplo.
E pq o Maven te impediria de fazer os testes dentro do AS?
This message was edited 1 time. Last update was at 30/05/2008 08:59:41
|
Ajude na criação do StackOverflow em português!!!
http://area51.stackexchange.com/proposals/23539/software-development-in-portuguese?referrer=tI8Uon7RDszY236h5e0UuA2
http://www.empresadigital.inf.br
http://twitter.com/afsalvati |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 02/06/2008 08:43:20
|
Rubem Azenha
GUJ Master
![[Avatar]](/images/avatar/cb953f6ca5923f7517125db46ed1293d.jpg)
Membro desde: 28/06/2004 00:10:43
Mensagens: 1933
Localização: São Paulo, SP
Offline
|
Para testes integrados, o mais correto não seria rodar no AS mesmo, sem mockar nada? Com um ambiente semelhante ao ambiente de produção?
|
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 02/06/2008 09:39:07
|
andre_salvati
GUJ Ranger
Membro desde: 02/06/2005 16:28:38
Mensagens: 939
Offline
|
Rubem Azenha wrote:Para testes integrados, o mais correto não seria rodar no AS mesmo, sem mockar nada? Com um ambiente semelhante ao ambiente de produção?
Sim, é o que eu tb acho. E o teste dentro do container ainda simplifica bastante sua vida.
Hoje eu uso Maven + plugins do Maven + JBoss AS + JBoss ESB + testes de integração em componentes tranquilamente.
This message was edited 1 time. Last update was at 02/06/2008 09:39:36
|
Ajude na criação do StackOverflow em português!!!
http://area51.stackexchange.com/proposals/23539/software-development-in-portuguese?referrer=tI8Uon7RDszY236h5e0UuA2
http://www.empresadigital.inf.br
http://twitter.com/afsalvati |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/07/2008 10:24:19
|
Alessandro Lazarotti
Virtual Machine Man
![[Avatar]](/images/avatar/2aaaddf27344ee54058548dc081c6541.jpg)
Membro desde: 21/01/2004 14:12:54
Mensagens: 719
Offline
|
Acho que "Teste de integração" é um termo muito amplo para decidir onde rodar isso ou aquilo.
Eu poderia testar a integração de duas classes de negócio, onde nenhuma das duas utilizam recursos de um AS ou banco de dados. Para tal não faz sentido roda-lo no ambiente servidor.
Para testes de aceitação, estes sim devem rodar sem dúvida em um ambiente o mais próximo possível da produção: - em um servidor de aplicação, conexões de banco, filas de mensagens e etc.
This message was edited 1 time. Last update was at 01/07/2008 10:25:05
|
... Lezinho
------------------------
twitter: @lazarotti
http://alessandrolazarotti.wordpress.com/
http://jbossbrasil.org/
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/07/2008 18:23:43
|
andre_salvati
GUJ Ranger
Membro desde: 02/06/2005 16:28:38
Mensagens: 939
Offline
|
Lezinho wrote:
Eu poderia testar a integração de duas classes de negócio, onde nenhuma das duas utilizam recursos de um AS ou banco de dados. Para tal não faz sentido roda-lo no ambiente servidor.
No contexto do nosso amigo acho melhor a "integração" dentro do servidor. Lembre-se que ele precisa testar transações.
|
Ajude na criação do StackOverflow em português!!!
http://area51.stackexchange.com/proposals/23539/software-development-in-portuguese?referrer=tI8Uon7RDszY236h5e0UuA2
http://www.empresadigital.inf.br
http://twitter.com/afsalvati |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/07/2008 18:51:02
|
Alessandro Lazarotti
Virtual Machine Man
![[Avatar]](/images/avatar/2aaaddf27344ee54058548dc081c6541.jpg)
Membro desde: 21/01/2004 14:12:54
Mensagens: 719
Offline
|
Depende. Eu faço testes funcionais, com transações, em Façades de Seam Component com o Jboss MC (embeddable) e realizo os testes de aceitação no servidor.
|
... Lezinho
------------------------
twitter: @lazarotti
http://alessandrolazarotti.wordpress.com/
http://jbossbrasil.org/
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/07/2008 22:35:24
|
andre_salvati
GUJ Ranger
Membro desde: 02/06/2005 16:28:38
Mensagens: 939
Offline
|
Lezinho wrote:Depende. Eu faço testes funcionais, com transações, em Façades de Seam Component com o Jboss MC (embeddable) e realizo os testes de aceitação no servidor.
Oras, e desde quando o JBoss 5 (MC de MicroContainer para os curiosos) deixou de ser servidor/container?
Já discutimos testes usando MC por aqui .... http://www.guj.com.br/posts/list/81757.java
Não vejo diferença entre um teste "funcional" no 4.2.2 ou no 5 (20 segundos?).
Além disso, prefiro testar com as versões/configurações idênticas aos ambientes de homologação/produção ...
|
Ajude na criação do StackOverflow em português!!!
http://area51.stackexchange.com/proposals/23539/software-development-in-portuguese?referrer=tI8Uon7RDszY236h5e0UuA2
http://www.empresadigital.inf.br
http://twitter.com/afsalvati |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 02/07/2008 09:34:37
|
Alessandro Lazarotti
Virtual Machine Man
![[Avatar]](/images/avatar/2aaaddf27344ee54058548dc081c6541.jpg)
Membro desde: 21/01/2004 14:12:54
Mensagens: 719
Offline
|
Para esclarecer, o Jboss MicroContanier é um servidor tão quanto o JBoss Microkernel foi ... ou seja, não é. Ele é usado pelo App Server, mas não é um. Na verdade ele se assemelha muito mais a Spring do que a JBoss. O problema é o pé que o projeto esta hoje. Ainda esta lento (embora na minha máquina ele não demore mais de 8 segundos), e alguns bugs realmente atrapalham.
Mais detalhes:
http://www.jboss.org/file-access/default/members/jbossmc/freezone/docs/2.0.x/userGuide/overview.html
http://www.jboss.org/jbossmc/
Eu não acho errado fazer os testes no ambiente similar a produção ... depende do que esta sendo testado e sua granulariedade.
This message was edited 1 time. Last update was at 02/07/2008 09:35:08
|
... Lezinho
------------------------
twitter: @lazarotti
http://alessandrolazarotti.wordpress.com/
http://jbossbrasil.org/
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 02/07/2008 10:04:49
|
andre_salvati
GUJ Ranger
Membro desde: 02/06/2005 16:28:38
Mensagens: 939
Offline
|
Lezinho wrote:Para esclarecer, o Jboss MicroContanier é um servidor tão quanto o JBoss Microkernel foi ... ou seja, não é.
Confundiu...
|
Ajude na criação do StackOverflow em português!!!
http://area51.stackexchange.com/proposals/23539/software-development-in-portuguese?referrer=tI8Uon7RDszY236h5e0UuA2
http://www.empresadigital.inf.br
http://twitter.com/afsalvati |
|
|
 |
|
|