硒测试后清理数据

Rob*_*Rob 5 selenium unit-testing

我正在为内部网络应用程序设置一些Selenium测试,并寻找有关测试"最佳实践"的建议.其中一个测试是通过UI添加一些无法通过UI删除的数据(例如,您可以通过Web应用程序添加记录,但删除需要在内部联系某人以在数据库级别删除它).在运行Selenium测试后,您通常如何考虑清理数据?

有问题的应用程序是用PHP编写的,我使用PHP进行测试(使用Selenium RC和SimpleTest),但我对其他工具等开放,因为这只是一个广泛的最佳实践问题.正在测试的应用程序是在我们的开发环境中,所以我并不特别担心测试带来的数据.

一些想法:

  1. 在Selenium测试中手动连接到数据库以清理数据
  2. 使用像DBUnit这样的东西来管理它?
  3. 只需添加数据,不要担心清理它(也就是说,懒惰的方法)

谢谢!

编辑:似乎大多数想法围绕着相同的结论:处理一组已知数据并在测试完成后恢复.这种机制可能会因语言,数据量等而有所不同,但这看起来应该适合我的需要.

Sar*_*Mei 4

我将 Selenium 与 Rails 应用程序结合使用,并使用固定机制从测试数据库加载和卸载数据。它与 DbUnit 方法类似,但由于数据量较大,我不会在测试之间卸载和重新加载。(不过,这是我正在研究的事情。)