首页 / 软件开发 / 数据结构与算法 / 使用.net开发Web自动化测试工具
使用.net开发Web自动化测试工具2011-04-01 51testing zuki前段时间,由于测试需要,使用C#结合WatiN组件,开发了一个小小的web自动化测试 工具。WatiN 是一个非常简单灵活的测试框架,可以模拟用户在客户端浏览器中的大部份操 作,API也比较简单。一、实现url调用和web控件的控制很简单,参考下面代码:请 for (int i = 0; i < txtUrls.Length; i++)
{
try
{
WatiN.Core.DialogHandlers.AlertDialogHandler dh = new WatiN.Core.DialogHandlers.AlertDialogHandler();
using (IE ie = new IE(txtUrls[i])) // 调用URL,txtUrls[i]为Url地址
{
ie.AddDialogHandler(dh);//增加 一个控制句柄
ie.CheckBox ("cblSets_6").Checked = false;
ie.CheckBox ("cblSets_8").Checked = true;
ie.Button ("btnSave").ClickNoWait(); //执行保存
ie.RemoveDialogHandler(dh);
ie.Close();
}
}
catch (Exception e)
{
sb.Append("Execute Err:").Append(txtUrls[i]).Append(";");
}
}
二、WatiN 里常用的类WatiN.Core.Find最普遍使用的类就是Find类的,它是一个工厂类,主要使用它的静态方法来实现一些 查询条件。比如像上面的例子中的这个语句“ie.Button(Find.ByName ("btnG")).Click();”就调用了Find的静态方法ByName来查询一个name 属性为指定值的HTML元素,然后再调用IE对象的Button方法把这个元素转换为按钮对象。WatiN.Core.IE这应该是最关键的类了。他常用的方法是和属性为属性HtmlDialogs 返回当前对象用JavaScript打开的模式窗口(需然帮助文档中说非模式 窗口也包括在内,但在试用中发现用window.open打开的窗口没有被)Frames 返回当前的象里的所有Frames方法静态方法 AttachToIE 与一个已经找开的IE关连。Button,TextField,Image,Div 等一系列方法。与Find对象共同使用用于返回IE中特定 的按钮,输入框,等HTML元素。