我想创建一些 Webdriver 测试来测试我的 Java Web 应用程序,但我不确定它们是否应该存在于另一个项目中,或者它们是否应该存在于我的 Web 应用程序项目中。
我还想在每次提交到我的 SVN 存储库时从我的 Hudson CI 服务器运行这些 Webdriver 测试——这是一种标准做法吗?
我认为这并不重要,但我想知道其他人是怎么做的?
我想创建一些 Webdriver 测试来测试我的 Java Web 应用程序,但我不确定它们是否应该存在于另一个项目中,或者它们是否应该存在于我的 Web 应用程序项目中。
我还想在每次提交到我的 SVN 存储库时从我的 Hudson CI 服务器运行这些 Webdriver 测试——这是一种标准做法吗?
我认为这并不重要,但我想知道其他人是怎么做的?
将您的项目和 Selenuim 测试分开是一个很好的做法,特别是如果您计划在 Hudson 中运行它们。这是因为此类测试将运行很长时间,并且您希望保持构建快速运行。
因此,您应该创建带有测试的单独项目并在主项目完成后运行它 - 这一切都可以在 Hudson 中设置。您可以将项目设置为在每次提交后构建,但是您应该阅读相关的 Hudson 文档
我们有一个用 Java 和 Gwt 编写的大型企业应用程序,所以客户端上有很多 JS。
我们过去曾尝试使用 selenium 对其进行测试,但由于它的复杂性和脆弱性,我们只做了一些冒烟测试。
现在我们用 cucumber+watir+webdriver 开始了一个完整的 UseCases Scenario 测试。测试是用 Ruby 和 Gherkin(黄瓜 DSL)编写的,并针对我们的应用程序运行。我们将它与 Hudson 集成,我们有任何错误的漂亮屏幕截图(很快还有 .avi)
到目前为止,QA 和 BA 人员都很热情,考虑到与运行套件和去喝咖啡相比,手动重新测试功能节省了成本,开发工作已经得到了回报。;)
如果您正在为 ASP.NET 应用程序进行测试,其中包含可重复用于不同页面的控件,则为每个控件而不是页面创建一个类可能是有意义的。但通常你会想让每个类都特定于一个页面。并将您的页面保持在它的服务/功能上,而不是代码中发生的事情。
这是一个很好的概述。 http://code.google.com/p/selenium/wiki/DesignPatterns