我们有商业用户希望参与为我们的项目编写 Web 测试,但仅仅为此目的购买完整的 Visual Studio 许可证似乎有点过头了。
是否有任何开源或第三方工具可用于生成可供 Visual Studio 读取的 Web 测试?
我更喜欢集成到 IE 或 Firefox 中的工具,并且可以像 Visual Studio 集成提供的点击方法一样简单地生成测试。
我们有商业用户希望参与为我们的项目编写 Web 测试,但仅仅为此目的购买完整的 Visual Studio 许可证似乎有点过头了。
是否有任何开源或第三方工具可用于生成可供 Visual Studio 读取的 Web 测试?
我更喜欢集成到 IE 或 Firefox 中的工具,并且可以像 Visual Studio 集成提供的点击方法一样简单地生成测试。
虽然我认为 Selenium 和 Watin/Watir 是有价值的替代品,但它们是非常强大的测试解决方案,我认为它们都不允许您像 VisualStudio 2008 开箱即用那样记录 .webtests。我相信他们会记录单元测试,如果这是您想要的,那很好。我知道的唯一能完全满足您要求的工具是 Fiddler。
http://www.fiddler2.com/fiddler2/
罗伯托.-
您可以在http://seleniumhq.org/上查看 Selenium 。
“也许是最完整的软件包,支持在 IE、FireFox 和 Safari 中进行测试。您的单元测试是用 Java 编写的,因此您只需要学习 API。它们还有有趣的服务器选项,您可以在其中跨服务器运行测试. 您甚至可以使用 FireFox 插件记录测试。” (来源)
例如,您可以稍后将使用 Firefox 创建的测试作为 C# 中的单元测试运行。
您可以使用 selenium、watir、webrat 等。这是 Scott Hanselman 的一篇文章,描述了将 watir 集成到 NUnit 断言中:
http://www.hanselman.com/blog/IntegratingRubyAndWatirWithNUnit.aspx
它实际上是一个很好的例子,它也可以用来将外部测试框架绑定到 MS 测试框架中。这是一个项目,需要花费少量精力来创建一个读取外部测试框架输出的断言,但这并不困难。我们现在与 watir 一起在工作中使用它,并且可能很快与 webrat 和 mechanize 结合使用。
Watir 确实有可用的记录器,请查看 OpenQA:http ://watir-recorder.openqa.org/
我不知道任何使用 Visual Studios Web 测试框架的东西,但是正如 Andrea 指出的那样,您可以使用 selenium。我会推荐 Selenium RC,因为只要支持 http 连接,您就可以使用任何语言和测试框架编写测试。我使用 rc 在 C# 中使用 NUnit 编写测试,但您可以使用任何 vb、ironpython、托管 c++、f# 等以及 Microsoft 测试框架。Selenium IDE 是一个 firefox 浏览器扩展(尚无可用的 IE 版本),但 selenium 可在大多数 Web 浏览器中使用,包括 IE、FF、Safari 和 Opera。
其他选项可能包括类似于 selenium 的 WatiN。两个框架都支持功能测试方法。对于单元测试,你可能想看看 NunitAsp。
Fiddler2允许用户将他们的浏览器会话记录为 Visual Studio Web 测试。
这将允许人们创建基本测试。然而,开发一个好的 web 测试通常需要一个编码的 webtest,如果没有 Visual Studio 的测试版,效果就不那么好了。
为此,我肯定会推荐其他工具。Microsoft VSTS WebTest 专为性能测试而设计,并不是功能测试的好工具。
在大多数情况下,必须关联 WebTest,这将负责维护 HTTP 会话和其他动态值。如果您仍然感兴趣,可以按照本指南进行操作。
我想您的团队最好的选择是使用 Selenium 进行简单的记录和回放。根据我的经验,业务用户的技术不足以应付脚本。
如果您决定采用 WARIT,您可以获得能够在更多浏览器(与 Selenium 相比)上播放脚本的额外好处,但它具有不同类型的挑战,并且也不适合商业用户。
谢谢, Maciej