当我们遇到生产问题时,调试它们变得很困难,首先是由于无法访问生产数据库,其次因为组件太重,所以它不会出现在本地机器上。我们剩下的就是逐行手动遍历代码并猜测它可能出错的地方。
不太喜欢的方法是创建一个类似于生产场景和调试的TestNg单元测试。不太喜欢,因为数据量巨大,涉及大量表格和对象,因此创建数据非常耗时。
在单元测试中,测试数据在xmls中创建,它反映了orm对象属性。例如 员工:id,name,phoneNumber
<Employee>
<id>1<id>
<name>john</name>
<phoneNumber>12345</phoneNumber>
</Employee>
在测试启动时,它们通过Jibx解组到数据对象,并持久存储到内存H2数据库中,然后可以用作测试用例的示例数据。
我正在寻找一种自动化测试xml数据创建的方法。将从uat数据库转换测试数据并创建这些xmls的东西。 这将有助于我们立即调试问题,只要我们在开发数据库中有类似的数据。
答案 0 :(得分:0)
当我在过去遇到过这种情况时,我使用简短的Java程序从数据库中读取记录并生成xml文件。如果您使用的是JDBC(Java数据库连接),则ResultSet和ResultSetMetaData接口(https://docs.oracle.com/javase/8/docs/api/java/sql/package-summary.html)可以使您制作相当灵活的工具。