寻找网站测试自动化的方法

问题描述 投票:0回答:9

我们开发自定义调查网站,我正在寻找一种方法来自动化这些网站的模式测试。 调查通常包含许多复杂的规则和分支,这些规则和分支也会根据项目的响应方式而触发。 所有调查在发布给客户之前都经过严格测试。 此测试需要大量的手动工作。 我想了解一些可以通过回答问题并验证数据库中的结果来自动化这些测试的选项。 调查网站由一个引擎生成,该引擎创建和编写 ASP 页面并接收响应并处理到数据库中。 因此,我确定测试该网站的唯一方法是与网页本身进行交互。 我想在某种程度上我需要构建某种类型的机器人;我真的不太了解它们背后的设计。

有人可以提供一些关于如何实现这一目标的建议吗?

unit-testing web-applications asp-classic automated-tests
9个回答

5
投票

您还可以查看WatiN


0
投票

听起来你的引擎可以使用类似 Test::WWW::Mechanize

的东西生成测试脚本

0
投票

适用常规测试方法;白盒和黑盒。

对您来说,白盒测试可能意味着对您的应用程序进行检测,使其能够进入特定状态,然后您可以预测您期望的结果。

黑匣子可能意味着您点击了某个页面,然后考虑可能的结果是否有效。 重复并冲洗直至获得足够的覆盖。

我们使用的另一件事是监控我们服务的统计数据。 我们是否获得了该页面的预期点击次数? 我们定期运行 a/b 测试,并且我对重构的代码运行了 a/b 测试,以验证在推出之前没有任何更改。

/艾伦


0
投票

我可以想到几个可以完成工作的优秀 Web 应用程序测试套件 - 一个免费/开源和一个商业:

  1. Selenium(开源/跨平台)
  2. TestComplete(商业/基于 Windows)

两者都可以让您通过基于与 Web 应用程序的交互来验证数据库记录来创建测试套件。

您基于 Windows/ASP 的事实可能意味着 TestComplete 将使您更快地启动和运行,因为它是 Windows 和 .NET 的本机。您可以在投资之前下载免费试用版,看看它是否适合您。


0
投票

查看 Symfony 框架附带的单元测试框架“lime”。 http://www.symfony-project.org/book/1_0/15-Unit-and-Functional-Testing。你没有提到你的语言,lime是php。


0
投票

我建议使用mechanize gem,可用于红宝石。使用起来非常直观。


0
投票

我使用 QEngine(商业)来达到同样的目的。我需要添加数据并在用户界面中检查相同的数据。我编写了一个脚本来执行此操作并循环调用它。数据可以通过 csv 或 excel 传递。 检查 www.qengine.com ,你也可以尝试 Watir。


0
投票

我的建议是 QA Agent (http://qaagent.com)。这似乎是一种新方法,因为您不需要安装任何东西。只需在基于浏览器的 IDE 中开发 Web 测试即可。顺便说一句,您可以使用 jQuery 和 java 脚本开发测试。真的很酷!

© www.soinside.com 2019 - 2024. All rights reserved.