WatiN 简介

最近有时间开始研究一下.Net平台下的自动化开源框架WatiN。但是找到的资料基本上以英文为主,为了方便广大中文用户,一方面留下一些自己在使用过程中的体会,另一方面可能会翻译一些英文的关于WatiN的资料。

 

WatiN —— Web Application Testing In .Net

 

为什么会有WatiN?

给用户提供一个.Net平台下,将Web测试自动化的便捷途径。

 

如何通过WatiN来进行自动化测试的呢?

 

摆事实,讲道理,乃严谨的科学态度,到底WatiN下的自动化测试如何便捷呢?

[Test] 
public void SearchForWatiNOnGoogle()
{
 // 打开IE浏览器,并来到Google站点
 using (var browser = new IE("http://www.google.com"))
 {
  // 定位到搜索框,并输入WatiN
  browser.TextField(Find.ByName("q")).TypeText("WatiN");
  // 点击“搜索”按钮
  browser.Button(Find.ByName("btnG")).Click();
  // 验证搜索结果中是否包含关键字“WatiN”
  Assert.IsTrue(browser.ContainsText("WatiN"));
 }
}

 

 

 

Web自动化测试的起步case,在Google中搜索关键字“WatiN”,并验证,返回结果中存在“WatiN”。

 

WatiN到底能做些什么?

  • 自动捕获所有主要的HTML元素
  • 通过多种元素属性来寻找,定位网页上的元素
  • 支持对于AJAX实现页面的测试
  • 支持HTML中frame和ifame
  • 支持对于各类弹出对话框的处理(Alert,Confirm,Login,Download等)
  • 支持HTML Dialogs
  • 提供控制模型和页面
  • 能对测试页面进行截图
  • 有简单的,同时也是可扩展的记录日志的机制
  • 易于与其他测试工具整合
  • 支持对于IE 6,7,8和Firefox 2,3下的测试
  • 由C#开发,熟悉C#的用户可以随时完善该测试框架

从哪里可以获取WatiN呢?

 

可从sourceforge下载最新版的WatiN,普通用户可下载编译好的DLL直接使用,同时,WatiN的源码也对公众开放,有兴趣的用户可任意更新添加自己需要的feature。

 

WatiN还有其他的相关工具吗?

 

有,这个真有。

IE下,IE developer toolbar,这是web应用开发也好测试也好,必备良品吧。

Firefox下,Firebug,为人不识Firebug,只用Firefox也枉然。

留到最后的未必是最好的,WatiN Test Recorder,测试代码能写还是自己写吧。这玩意儿抓出来的东西。。实在不是一个丑字能形容的啊。尽管说,不论白老鼠,黑老鼠,能吓退猫的都是牛B的老鼠。但是网页结构一旦复杂了点。自动捕获的就未必是你想要的。

 

 参考资料:WatiN站点(http://watin.sourceforge.net/

你可能感兴趣的:(Web,Firebug,IE,Google,firefox)