在Asp.net页面中测试UI?
在Asp.net页面中自动测试UI的最佳方法是什么?
解决方案
Watir或者Watin是一个不错的起点。
更多信息在这里
问题的定义非常宽松,因此几乎不可能获得一个好的答案。
敢于建议使用Selenium可能有助于自动化任务。
不确定"最佳"方式,这可能是一个非常棘手的问题...
一种方法是在Visual Studio的测试版中使用Web测试,请参阅MSDN文档。
这也是一个简单的教程。
我们要专门测试什么?跨浏览器合规性?表现?可用性?这是一个相当广泛的问题,我们可以再定义一点吗?
在用户接受度方面?找虫子?负载测试?
对于第一个,请其他人使用它并对其进行评论。
对于第二个,我们应该使用事先编写的测试计划和测试用例来测试UI,以进行数据验证(服务器端以及javascript),范围检查和所有这些工作。我相信有一些可以模拟点击的工具。
对于第三个,请尝试JMeter。
至于测试网站背后的引擎,我们可以绕过Web界面并编写直接调用引擎的测试类(如果未直接在ASP中编码)以测试其功能。我将这称为测试UI的另一项任务。
可以在SourceForge.net上找到的AspUnit。但是,该项目不再积极开发,但可以在.Net 1.1和2.0上运行。
- 设置一个带有多个运行应用程序的终端的房间
- 准备要完成的任务清单
- 招募志愿者来完成任务
- 通过拍打或者单向镜监控志愿者的行为
冲洗并重复!
如果我们是项目中唯一的编码器,建议我们手动进行测试。也就是说,我们可能会遭受编码器肌病。由于我们编写了代码并知道该怎么做,因此我们可能会下意识地避免执行会破坏该代码的操作。
我曾经使用过不同的自动化方法,但是它们往往很繁琐。换句话说,我们会发现自己比预期更频繁地更新测试。我认为,只有在一个项目中有多个开发人员并且他们不了解整个范围的情况下,才需要进行自动测试。
在理想的环境中,开发人员将有一个专门的测试人员来编写和维护测试,并验证代码在功能上是否正确并满足业务需求。
在现实世界中,许多开发人员基本上都是狼,资源和时间有限,拥有可靠,无错误代码的最佳方法是了解业务需求,然后确保在编写代码时不会犯错误。 :-)
我投票支持Visual Studio 2010中的测试管理器,然后为其生成"编码的UI测试"!
- 创建断言非常容易
- 非常漂亮的代码(可读!)
- 易于维护,因为代码易于阅读,我们可以更改在页面上找到控件的方式
我做了一个快速比较或者WatiN,Selenium和Test Manager VS2010