JUnit (ou outro framework) e aplicação web

2 respostas
B

Boa tarde,

eu tenho uma aplicação web, que ainda não tem testes unitários, e to afim de começar a utilizar. Mas eu nao usei muito testes unitários, muito menos pra web, e tenho algumas dúvidas sobre como ficaria a estrutura da aplicação, e como faria para que o framework testasse a camada DAO…

No momento a minha aplicação está dessa forma:

- APP
    - src
        - br.com.app.model
        - br.com.app.dao
        - br.com.app.controller
        - META-INF
    - web
        - template
        - resources
        - WEB-INF
        - index.xhtml
    - build.xml

A primeira dúvida é sobre a estrutura quando os testes unitários forem acrescentados. Seria uma boa simplesmente adicionar um pacote a mais no diretorio src (do tipo br.com.app.test)? Ou deveria eu fazer isso em outro lugar?

E como faço para testar a camada DAO? Primeiro também em relação à estrutura, a minha ideia inicialmente é por um pacote br.com.app.test.dao, mas se tiverem alguma ideia melhor seria muito bem vinda. E a segunda dúvida é sobre como fazer o teste utilizando a persistence.xml existente. Ele está lançando uma excessão dizendo que nao encontrou o jta-data-source… Seria o caso de criar um outro persistence.xml??

Desde já obrigado,
Bruno.

2 Respostas

Oenning
Eu sigo o padrão do Maven, fica mais ou menos assim assim
- APP
    - src/test/java
        - br.com.test.app.model
        - br.com.test.app.dao
        - br.com.test.app.controller
        - META-INF
    - src/main/java
        - br.com.app.model
        - br.com.app.dao
        - br.com.app.controller
        - META-INF
    - web
        - ...
    - build.xml

Sendo assim, deixo meus testes isolados do código de produção.

Para testar o DAO, eu uso um .xml diferente, porque geralmente meu .xml de produção aponta para uma base de DESENV e meu .xml de teste unitário aponta para uma base de TESTE na qual eu fico limpando antes de cada teste.

B

ahhmm, é uma boa. acho que vou fazer assim mesmo

valeu!

Criado 6 de agosto de 2010
Ultima resposta 6 de ago. de 2010
Respostas 2
Participantes 2