如何为系统测试创建testdata——使用系统接口与数据库插入



我们有两个web服务系统(cxf和hibernate)。web服务由web前端(rails)使用。

我想用capybara写一些自动化的集成测试,为了测试正确的工作流,我们需要数据库中的一些testdata。由于db模型非常复杂,因此很难使用sql创建和维护测试数据。

另一个选择是使用web服务本身来设置一些数据,例如,在测试的设置中,我可以使用一些"createCustomer"接口来使用应用程序提供的业务功能。

有没有人对测试数据的设置有经验?就我个人而言,我不喜欢使用业务接口来创建测试数据的方法,因为我会将前端测试与流程结合起来,这两者实际上并不相关。

几点思考:
-使用SQL脚本(我知道你已经写了这将是非常困难的,但我,SQL脚本很容易设置,易于阅读和维护)
-使用RDBMS的导入/导出工具(例如Oracle的impdp/expdp)
-为RDBMS设置虚拟机,每次运行测试时回滚到快照

最新更新