gpt4 book ai didi

java - DBUnit 测试比较失败

转载 作者:太空宇宙 更新时间:2023-11-04 07:02:20 25 4
gpt4 key购买 nike

我的数据库单元测试有问题,该测试测试数据是否正确保存。因此,我用我的数据创建了一个示例数据库,并尝试将设置和预期数据进行比较。 id 生成和其他一切都应该由 hibernate 管理

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration
@TestExecutionListeners({ DependencyInjectionTestExecutionListener.class, DbUnitTestExecutionListener.class })
@DatabaseTearDown("empty.xml")
public class UserDaoTests {

@Autowired
UserAdminDao userDao;

@Test
@DatabaseSetup("db-setup.xml")
@ExpectedDatabase("db-expected.xml")
public void testPersistUser(){

User user = new User();

user.setUserId("user2");
user.setName("test2");
user.setEmail("user2@email.com");
user.setLocked(false);
user.setEnabled(true);
user.setVersion(0);
user.setPassword("asdfasdf");

userDao.persist(user);

}

}

我的设置是:

<dataset>       
<user id="1" userId="user1" name="test1" email="user1@email.com" locked="0" enabled="1" version="0" password="asdfasdf" />

</dataset>

与下面的用户 id=2 相同:

<user id="2" userId="user2" name="test2" email="user2@email.com" locked="0" enabled="1" version="0" password="asdfasdf" />

但我收到比较错误:

junit.framework.ComparisonFailure: row count (table=user) expected:<[2]> but was:<[1]>

不知道我的错误在哪里。感谢您的帮助:)

最佳答案

您必须将表名称添加到“@ExpectedDatabase”像这样的东西@ExpectedDatabase(value = "dataset.xml", table = "your_table_name")

关于java - DBUnit 测试比较失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21909399/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com