dbunit数据集不会将布尔字段放入db

时间:2012-04-11 07:16:10

标签: java integration-testing dbunit

我使用DbUnit进行集成测试。我有以下数据集。

<?xml version='1.0' encoding='UTF-8'?>
<dataset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="dataset.xsd">
    <USERS ID="1" EMAIL="" LASTNAME="A" LASTMODIFIED="2001-01-01 00:00:00.0" />
    <USERS ID="2" EMAIL="" LASTNAME="D" LASTMODIFIED="2001-01-01 00:00:00.0" ACTIVE="true" />
</dataset>

当我在测试中从DB加载时,不会在第二个用户上设置布尔字段ACTIVE。

测试如下:

@SpringApplicationContext("component-context-test-dao.xml")
@DataSet
public class UserDaoImplIT extends UnitilsJUnit4 {

@SpringBeanByType
private UserDaoImpl userDao;

@Test
public void shouldReturnTrueIfFoundActiveUserWithEmail() throws InterruptedException {
    boolean exits = userDao.isEmailFromActiveUserInUsers("anEmailThatDoesNotExist@oeamtc.at");
    List list = HibernateUnitils.getSession().createQuery("from User").list();
    assertThat(exits, is(true));

}
}

我在eclipse中针对内存中的h2运行测试。

为什么所有字段都被映射到除布尔值之外的任何想法?

1 个答案:

答案 0 :(得分:1)

因为该值应为TRUEFALSE

Datatypes - boolean type