网站到结束阶段,发现每改一个bug,都要重新打开每个页面测试页面能否打开,并且打开页面后进行一些操作测试能否正常进行。每次部署后,发现新Bug修复后,都要做一遍功能测试
  先普及一下什么是功能测试吧。简单的说功能测试主要是参照用户手册,看看能不能完成所预先设计的功能状态,有点类似于从用户使用的角度来做测试。比如一个网站登陆的功能,做功能测试,我们需要验证能否打开登陆的页面,输入用户名,密码,看是否成功….
  WatiN是开源的C#库,利用它我们可以把需要手工做的功能测试自动化。
  watiN官方下载地址:
  http://sourceforge.net/project/showfiles.php?group_id=167632
  下载后解压,假设解压到: c:\Program Files\WatiN\,
  在c:\Program Files\WatiN\bin\目录下有个watiN.Core.dll文件,这个是最主要的动态链接库。
  咱们先用VS新建一个Test Project吧,不会的请看我博客上的前一篇文章
  利用VisualStudio白盒测试入门
  当然我们也可以不建Test Project,建其他的Console Application或者Windows Application都是可以的。
  建好工程后,添加对WatiN.Core.dll的引用(Add Reference).
  在代码中添加命名控件的引用:
  using WatiN.Core;
  然后新加一个Test Method,如下:
public void TestLoginFailed()
{
using (IBrowser ie = BrowserFactory.Create(BrowserType.InternetExplorer))
{
ie.GoTo("http://www.google.com");
ie.TextField(Find.ByName("q")).Value = "WatiN";
ie.Button(Find.ByName("btnG")).Click();
Assert.IsTrue(ie.ContainsText("WatiN"));
}
}
  呵呵,运行一下,看看效果吧,是不是自动打开IE,然后打开google在搜索框上填入了关键词,点击搜索,看到搜索结果了呢?
  控制浏览器就是这么简单的几句话就完成了。



  估计有人会说了,你怎么知道google页面的输入框的名字是“q”,按钮名字是“btnG”呢? 看网页源代码去吧。
  呵呵,有个很好用的工具,对我们分析网页很方便。他就是 IE Developer Toolbar
  官方下载地址:
  http://www.microsoft.com/downloads/details.aspx?FamilyID=e59c3964-672d-4511-bb3e-2d5e1db91038&displaylang=en
  安装完之后,打开IE,可以看到如下图所示的东东:
测试框架:利用WatiN自动化网站功能测试
测试框架:利用WatiN自动化网站功能测试
  用这个我们就可以很方便的得到自己所需要的网页元素的各种属性了。
  我最近就爱上它了,看上哪个网站的网页做得好,自己想照搬,就用这个工具,很简单就搞定了。比起自己去研究他的网页源代码方便多了。


最新内容请见作者的GitHub页:http://qaseven.github.io/

相关文章: