Primavera: testes de unidade e integração
Estou procurando as melhores práticas para configurar testes de unidade e integração usando o Spring.
Eu costumo usar 3 tipos de testes:
testes de unidade "reais" (sem dependências)os testes são executados como teste de "unidade" (banco de dados na memória, chamadas locais, objetos simulados, ...) ou como teste de integração (banco de dados persistente, chamadas remotas, ...)testes são executados apenas como testes de integraçãoAtualmente, só tenho testes da segunda categoria, que é a parte complicada. Eu configurei uma classe de teste base como:
@ContextConfiguration(locations = { "/my_spring_test.xml" })
public abstract class AbstractMyTestCase extends AbstractJUnit4SpringContextTests
E testes "unitários" como:
public class FooTest extends AbstractMyTestCase
com atributos autowired.
Qual é a melhor maneira de executar o teste em um ambiente diferente (teste de integração)? Subclasse o teste e substitua o ContextConfiguration?
@ContextConfiguration(locations = { "/my_spring_integration_test.xml" })
public class FooIntegrationTest extends FooTest
Isso funcionaria (atualmente não posso testá-lo facilmente aqui)? O problema dessa abordagem é que "@ContextConfiguration (locations = {" /my_spring_integration_test.xml "})" "é duplicado muito.
Alguma sugestão?
Atenciosamente, Florian