最近有时间开始研究一下.Net平台下的自动化开源框架WatiN。但是找到的资料基本上以英文为主,为了方便广大中文用户,一方面留下一些自己在使用过程中的体会,另一方面可能会翻译一些英文的关于WatiN的资料。
为什么会有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到底能做些什么?
从哪里可以获取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/)