WatiN——Web自動化測試(一)

軟件測試行業目前在國內逐漸的發展起來了,但是國內的軟件測試行業主要是 黑盒測試也就是我們平常所說的系統測試或功能測試,但真正做到像微軟那樣的所有測試開發還是很少。

下面言歸正傳,講解一下WatiN

1、 WatiN是什麼?

WatiN Web Application Testing in .Net,它是在.Net平臺喜愛調用IE進行Web 程序測試的開源工具。WatiN的官方網站:http://watin.sourcefoge.net/

說到Web自動化測試工具,大家可能最熟悉的是QTPLoadRunner。此兩者的強大之處我想大家都有耳聞,另外就是利用Ruby語言開發的自動化測試框架WatirWatiNWatir之間有很多相似之處,其最大的區別可能就是語言上的區別。

2、 WatiN什麼用處以及特徵?

1WatiN有什麼用處,勿容置疑的是,它可以幫助我們進行Web的自動化測試,是不是我們不需要進行任何操作呢,並不是這樣的,WatiN只是提供我們一個框架,要想是WatiN成爲我們平時中應用的工具,還必須得開發WatiN相關的自動化工具。

 2WatiN是一種非常容易上手的自動化測試框架,可以幫助我們程序員平時作一些簡單的調試和反覆工作;WatiN是用C#語言進行開發的,所以我們只要瞭解C#語言就可以進行WatiN的開發。

3WatiN類庫

 

其實我們平時應用中主要的是在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的死鎖、無法找到的控件等等。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章