【问题标题】:What is the best automated website UI testing framework [closed]什么是最好的自动化网站 UI 测试框架 [关闭]
【发布时间】:2010-10-22 19:09:09
【问题描述】:

有哪些好的自动化 Web UI 测试工具?

我希望能够在 .Net 世界中使用它 - 但它不必用 .net 编写。

诸如记录模式,集成到构建过程\持续集成之类的功能会很好。

我去看看:

还有其他我应该看的吗?

【问题讨论】:

标签: user-interface testing automation automated-tests


【解决方案1】:

试试httpunit

【讨论】:

    【解决方案2】:

    我绝对推荐 Selenium,您可以在 .NET 中使用它,支持不同的浏览器,在自动构建和 CI 流程中工作(我们从 CCNet 使用它)。代码很稳定。它有一些怪癖,但毕竟它们都有。

    无论您选择哪种工具,我都建议您围绕它创建自己的测试外观类。外观应设计为适合您的具体测试需求,而不会暴露太多测试工具 API 的细节。这将使测试代码更容易编写和维护。

    更新:如果您在应用程序中使用 ASP.NET 视图状态,则使用纯 HTTP 测试工具可能会遇到问题。这就是浏览器控制器(如 Selenium)要好得多的地方。

    【讨论】:

      【解决方案3】:

      我忘记了一个不错的工具,可以在上面找到链接,但找到这个...http://weblogs.asp.net/bsimser/archive/2008/02/21/automated-ui-testing-with-project-white.aspx也许可以提供帮助。

      【讨论】:

        【解决方案4】:

        取决于您想要实现的目标。

        您可以使用 Visual Studio Tester Edition 中内置的 Web 测试。它非常好并且易​​于自动化。您可以使用外部数据作为测试数据源,它与 VS 很好地集成。

        还有一个自动化 QA 的测试工具(忘记名字了),看起来不错但是很贵。

        还有硒。这就是我们在赛门铁克中使用的那个。最大的优点是它实际上使用了您要测试的浏览器。 VS 仅通过更改 http 请求参数来模拟浏览器,因此您可能无法测试您的站点的跨浏览器兼容性。另一方面,Selenium 使用浏览器并将其自动化,因此您可以在 IE、Firefox 等中实际测试您的网站。它还可以与 VS 单元测试集成,以便您可以在 VS 中查看测试结果。

        所以我会推荐 Selenium 或 VS。

        【讨论】:

          【解决方案5】:

          等待

          自动化 FF 和 IE

          [Test] 
          public void SearchForWatiNOnGoogle()
          {
           using (IE ie = new IE("http://www.google.com"))
           {
            ie.TextField(Find.ByName("q")).TypeText("WatiN");
            ie.Button(Find.ByName("btnG")).Click();
          
            Assert.IsTrue(ie.ContainsText("WatiN"));
           }
          }
          

          http://watin.sourceforge.net/

          【讨论】:

            【解决方案6】:

            您可能也有兴趣看看 ASP.NET 团队自己做了什么:Lightweight Test Automation Framework

            还有一个专用的forum

            【讨论】:

            【解决方案7】:

            我使用过 Selenium。功能很好,可以使用,但有问题。

            IDE 经常会错误地记录事件(因此需要手动更改测试),并且测试文件有时会无缘无故变得完全不可用,这意味着它们必须重新创建。 Selenium IDE 的开发似乎也停止了;有一段时间没有任何错误修复和补丁,错误报告似乎被忽视了。

            钼是一种基于 Selenium 的替代品,值得研究。

            http://www.molyb.org/

            【讨论】:

              【解决方案8】:

              Telerik 的新 WebUI Testing Studio 只是为了抛弃另一个选项(我没有尝试过,但我确实喜欢 Telerik)。我也会赞同 Selenium 的投票。

              【讨论】:

              • 起价为 2500 美元。它比免费的替代品好得多吗?
              【解决方案9】:

              目前在我的工作中,我使用QTP,到目前为止,它至少可以处理我们在 UI 上扔给它的几乎所有东西,并且它具有测试非 gui 服务的特殊模式,允许我们检查两者并帮助我们缩小范围在我们更改系统时出现一些问题的地方。在我看来,它是非常可配置的,并且包含 vbscript 作为它的语言允许与 Windows 上的很多东西集成,让你可以做任何你想做的事情!例如,我们使用它来控制 excel com 对象以制作成功和失败的自定义 excel 报告,因此结果的格式与手动运行测试以及在另一个项目上使用 adodb 对象检查页面时的格式相同向数据库提交信息,表明数据库包含该记录的正确数据!

              至于集成到构建过程中,我自己没有尝试过,但是可以从 vbs 文件启动 qtp 和测试,所以我认为这应该是相当简单的,因为 ms 工具往往允许你运行 vbs 文件大多数工具都可以轻松使用。

              如果您可以找人购买许可证,我会将它推荐给任何人!

              【讨论】:

                【解决方案10】:

                如果您正在寻找具有记录和回放、多线程回放、与构建过程集成、强大的脚本、良好的报告和出色的支持的简单、跨浏览器工具,请选择Sahi。您的测试人员/开发人员将更容易学习和维护。

                【讨论】:

                  【解决方案11】:

                  您可能需要考虑在 Selenium 附近还有 Rational Functional Tester !无论您是否熟悉 .Net 或 Java 中的编码,并且只想玩记录和回放,或者想要创建更复杂的程序化测试,我都会推荐它。

                  【讨论】:

                    【解决方案12】:

                    WebDriver 是另一种可能:http://code.google.com/p/webdriver

                    他们正在开发一个您可能会感兴趣的 .NET 包装器。

                    【讨论】:

                      【解决方案13】:

                      试试QEngine。它具有QTP的所有功能。

                      【讨论】:

                      • 根据链接的站点,该工具已达到 EOL。
                      【解决方案14】:

                      在严肃的项目中使用它非常不稳定。它通常会因“EI 忙”或“COM 对象错误”等意外原因而失败。 Selenium 更加稳定,并且已经有很多支持工具。例如 Selenium GRID 是一种可以显着减少测试运行时间的解决方案。 (我们对 Watin 的烟雾测试需要 6 个小时才能运行)。

                      【讨论】:

                      • 我也经常遇到 Watin 不稳定(频繁的 COM 异常)和 IE9 在 Watin 下崩溃的问题。
                      【解决方案15】:
                      【解决方案16】:

                      您可能希望查看RIATest 以了解 Web 应用程序的跨平台跨浏览器测试。

                      它适用于 Windows 和 Mac,支持的浏览器是 Firefox、IE 和 Chrome。在一个平台/浏览器上编写的自动化测试脚本可以在所有其他支持的平台/浏览器上运行。

                      它具有您想要的功能:用户交互记录模式和与 CI 服务器的集成(以 JUnit 格式输出结果,可供 Hudson 等 CI 服务器使用)。

                      (免责声明:我是 RIATest 团队成员)。

                      【讨论】:

                        【解决方案17】:

                        在使用了几种不同的自动化测试解决方案(TestComplete、QTP 等)之后,我必须投票支持 Telerik + Visual Studio。 Telerik 有很好的支持论坛,并且与您提出的任何测试框架都非常兼容。我们的开发人员将唯一的 ID 放入他们的 HTML 代码中,这样我们的脚本就不需要重写,即使进行了相当激烈的 UI 重构。这绝对比录制和播放更具挑战性,但是一旦您有了自己的唯一 ID,自动化代码几乎不需要维护。

                        【讨论】:

                          猜你喜欢
                          • 2010-12-23
                          • 1970-01-01
                          • 1970-01-01
                          • 2010-09-21
                          • 1970-01-01
                          • 1970-01-01
                          • 1970-01-01
                          • 2011-05-07
                          • 1970-01-01
                          相关资源
                          最近更新 更多