軟件測試行業目前在國內逐漸的發展起來了,但是國內的軟件測試行業主要是 黑盒測試也就是我們平常所說的系統測試或功能測試,但真正做到像微軟那樣的所有測試開發還是很少。
下面言歸正傳,講解一下WatiN。
1、 WatiN是什麼?
WatiN 即Web Application Testing in .Net,它是在.Net平臺喜愛調用IE進行Web 程序測試的開源工具。WatiN的官方網站:http://watin.sourcefoge.net/。
說到Web自動化測試工具,大家可能最熟悉的是QTP,LoadRunner。此兩者的強大之處我想大家都有耳聞,另外就是利用Ruby語言開發的自動化測試框架Watir。WatiN和Watir之間有很多相似之處,其最大的區別可能就是語言上的區別。
2、 WatiN什麼用處以及特徵?
(1)WatiN有什麼用處,勿容置疑的是,它可以幫助我們進行Web的自動化測試,是不是我們不需要進行任何操作呢,並不是這樣的,WatiN只是提供我們一個框架,要想是WatiN成爲我們平時中應用的工具,還必須得開發WatiN相關的自動化工具。
(2)WatiN是一種非常容易上手的自動化測試框架,可以幫助我們程序員平時作一些簡單的調試和反覆工作;WatiN是用C#語言進行開發的,所以我們只要瞭解C#語言就可以進行WatiN的開發。
(3)WatiN類庫
其實我們平時應用中主要的是在WatiN.Core下類以及方法。WatiN.Core中包括了我們平時網頁中所有的元素我們只需要使用IE8進行查看,利用相應的類方法進行調用即可。
WatiN.Core下的類的展示及關係
由此看來WatiN真的還就不難。
3、 簡單的示例展示
(1)示例一
public static void TestBaiDu1()
{
//通過ID
using (IE ie = new IE("http://www.baidu.com"))
{
ie.TextField("kw").TypeText("谷歌1");
ie.Button("su").ClickNoWait();
Thread.Sleep(2000);
ie.Close();
}
}
IE ie = new IE("http://www.baidu.com") 直接打開百度的網頁;
ie.TextField("kw").TypeText("谷歌1");將文本框進行賦值;
ie.Button("su").ClickNoWait();點擊Button事件;
ie.Close();ie關閉。
(2)實例二
public static void TestBaiDu2()
{
//通過Name
using (IE ie = new IE("http://www.baidu.com"))
{
ie.TextField(txt => txt.Name == "wd").TypeText("谷歌2");
ie.Button(btn => btn.Id == "su").ClickNoWait();
Thread.Sleep(2000);
ie.Close();
}
}
同樣的是打開網頁,將文本框的賦值和Button的點擊事件通過其他的方法進行查找的。
以上就是WatiN的最基本的認識,希望大家拍磚,後續我將陸續的寫上我研究WatiN的文章,將自己的心得分享給大家,在Web測試中將有很多的問題,包括IE的死鎖、無法找到的控件等等。