gpt4 book ai didi

java - dbUnit 数据类型

转载 作者:行者123 更新时间:2023-12-04 07:04:48 32 4
gpt4 key购买 nike

我正在使用 dBUnit 并试图用实际的 DB 数据集断言我预定义的 FlatXmlDataSet 的一行。问题是当数据来自 FlatXmlDataSet 时,我的验证码字段的 getValue 返回一个字符串,当它来自实际的实时数据库时返回一个整数。对于任何不是字符串的数据类型都是如此。我可以写一些东西在比较之前将所有内容转换为字符串,但有更好的方法吗?

我的代码:

    IDataSet initialSet = setupDBWithData("test.xml", true);
ITable initialTable = initialSet.getTable("USER");

String response = doTestSendVerificationPin();
assertOKResponse(response);

ITable userTable = _databaseTester.getConnection().createTable("USER");

// Make sure old user row is left unchanged
assertRowsEqual(initialTable, 0, userTable, 0);

... (再向下)
protected void assertRowsEqual(ITable expected, int rowExpected, ITable actual, int rowActual) throws Exception
{
ITableMetaData metaData = expected.getTableMetaData();
Column [] cols = metaData.getColumns();

for (int i = 0; i < cols.length; i++)
{
String colName = cols[i].getColumnName();
assertEquals(expected.getValue(rowExpected, colName), actual.getValue(rowActual, colName));
}

}

这是我吞下的 test.xml:
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE dataset SYSTEM "../Tests/testdata/common/some.dtd">

<dataset>
<USER ID="132" FIRST_NAME="Joe" LAST_NAME="Bob" VERIFICATION_CODE="1869" />
</dataset>

最佳答案

抱歉,如果这不能完全回答您的问题,但在我看来,这似乎是使用 DBUnit 的一种不寻常的方式。通常您使用 DBUnit 将数据加载到数据库中,然后使用 SQL 查询数据库并将其与其他一些已知结果进行比较。我还没有看到有人尝试将 DBUnit IDataSet 作为断言的一部分进行比较 - 我认为 DBUnit 不打算以这种方式使用。

关于java - dbUnit 数据类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1275967/

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