0

我想在多个浏览器(FF 和 IE)上在 selenium 中运行我的测试用例。由于相同的测试用例运行两次,我想在运行每个测试用例后清理我的数据库。(否则第二个测试用例将失败,因为数据已经输入)

运行每个测试用例后有什么方法可以清理数据库吗?(运行一个shell脚本或任何方法)

我必须处理 mysql 和 mongo db。以前,当我使用单个浏览器运行时,我使用了一个 shell 脚本来清理初始数据并将其重新安装到数据库中。

4

1 回答 1

1

您不能在每次测试运行之前简单地运行这些脚本吗?在测试之前运行数据库清理比在测试之后运行更好。因为当某事同时发生变化时,您仍然可以确定当您运行构建时,数据库必须处于默认状态,因为它刚刚被您的脚本清理。从 maven 你可以执行 bat/shell 文件http://maven.40175.n5.nabble.com/How-to-execute-a-script-in-maven2-td106785.html

只需使用预集成测试之类的阶段之一: Maven 和 Exec:分叉一个进程?


我个人会选择一个包含构建自动化的更复杂的解决方案。考虑使用 CI 服务器(持续集成)。它负责在每次代码更改后构建您的应用程序。您可以查看 Jenkins - 它是免费的。使用此类工具可以让您运行多个作业。然后,您可以在那里配置一项作业来构建您的应用程序和另一项作业以在您的应用程序上运行测试。在测试之前,您可以简单地以 pre-steps 甚至 post-steps 的形式运行 bat/shell 脚本。这个过程当然被简化了,只是为了让你对它有一个整体的看法。如果您想了解更多信息,请询问:)

于 2012-06-27T10:00:38.043 回答