amigos, tenho uma duvida fiz a seguinte classe JUnit
@RunWith(SpringJUnit4ClassRunner.class)
@TestExecutionListeners({ DependencyInjectionTestExecutionListener.class })
@ContextConfiguration(locations = "classpath:applicationContext.xml")
public class MensagemDaoTest {
@Autowired
private MensagemDao mensagemDao;
private Boolean icIndiceCriado = null;
@BeforeClass
public static void iniciou(){
System.out.println("comecou");
}
@Before
public void before(){
if(icIndiceCriado == null){
mensagemDao.createIndex();
this.icIndiceCriado = true;
}
}
@Test
public void comunicadoNaoEncontradoTest() throws ParseException, NullPointerException {
List<TbComunicado> retorno = mensagemDao.buscarComIndice("dsMaisInformacoes", TbComunicado.class,"primeiroasdasjdasjdjalkdjlas");
Assert.assertTrue(retorno.size() == 0);
}
@AfterClass
public static void acabou(){
System.out.println("acabou");
}
}
porem estou com um problema, ele entra no meu metodo before, cria o index, vai para o primeiro metodo de teste, roda, antes de ir para o proximo ele volta no before (dai o if para nao executar mais de uma vez) porem ele sempre executa… ele seta como true, mas qdo volta para esse metodo, ele volta como null, nao esta gravando o estado da variavel…
alguem sabe como posso arrumar isso?
Obs, faco no @before e nao no @BeforeClass, pois no beforeClass ele ainda nao subiu o meu spring.
Obrigado