I solved the issue with the help of geoand comment. (Thanks, you should have posted it as an answer). But let me share more information to make future reader's life easier.
First. It seems that telling that you have an script to initializa database makes hibernate to avoid the creation proccess. I changed the code embedded elemento to:
<jdbc:embedded-database id="dataSource" type="HSQL"/>
Hibernate will automatically execute import.sql from the classpath (at least in Create or Create-Drop mode) so there was no need to indicate further scripts. As Spring test framework does rollback the transaction you do no need to restore the database after each test.
Second, I had some problems with my context configuration that needed to be solved if I wanted Spring to create my schema. The best way to do it was to set the ignore failures attribute to "ALL" and look and the logs.
Third. Using HSQL for a few things MySQL for others has its own issues. Syntax is sometimes different and I had to fix my import.sql to become compatible with both databases.
Appart from that, it works:
@ContextConfiguration(locations={"file:src/test/resources/beans-datasource.xml",
"file:src/main/webapp/WEB-INF/applicationContext.xml",
"file:src/main/webapp/WEB-INF/my-servlet.xml"})
@Configuration
@RunWith(SpringJUnit4ClassRunner.class)
public static class fooTest{
@Inject BeanInterface myBean;
@Test
@Transactional
public void fooGetListTest(){
assertTrue("Expected a non-empty list", myBean.getList().size() > 0 );
}
}
}