您在Rails应用程序上使用Selenium测试时使用了哪些数据?你从装置加载?使用现有的dev db?使用单独的(非固定)数据库?
我在考虑我的选择.我有一个带有大型Selenium测试套件的Rails应用程序,它运行在Selenium Grid的修改版本上.现在,部分过程是在测试套件运行之前加载一大套灯具.这是很多数据.其中大部分是从我们的生产数据库导出的报告信息.当我最初设置它时,我将数据从Oracle导出到yaml.
现在一些报告表中的模式发生了变化,所以当然我必须重新生成夹具数据.有太多的东西,手动编辑文件是不值得的.但是,为每一个小的架构变化进行重新生成似乎效率低下 - 更不用说这是记住要做的又一步.有没有更好的办法?
编辑:我原本打算在每次测试之前加载灯具,并在每次测试后卸载它们,就像常规的Rails测试一样.但由于此报告数据,加载灯具大约需要15分钟.有200多个测试,套件每12小时运行一次.我可以弯曲太空船长!
编辑2:我也同意拥有这么大的装置是难闻的气味.不过,我不确定如何削减它,因为报告汇总了大量数据,而硒测试的大部分价值在于他们测试报告.
即使它只是一小组数据,但它仍然是另一套与架构变化保持协调的集合.(我们有一个单独的,较小的单元,功能和[Rails]集成测试集.)
这让我回到原来的问题 - 除了手工制作还是记得每次重新制作它们之外还有其他选择吗?