测试代码如下:
usingSystem.Diagnostics;
usingWatiN.Core;
usingNUnit.Framework;
usingSystem;
usingBusinessLayer;
namespaceWebAppUITesting
{
[TestFixture]
publicclassUITesting
{
IEie=null;
[TestFixtureSetUp]
publicvoidInitTest()
{
ie =newIE("http://localhost/WebApp/Default.aspx");
}
//测试加法
[Test]
publicvoidAdditionTest()
{
intnumber1 = 1;
intnumber2 = 2;
//Watin测试代码
ie.ShowWindow(NativeMethods.WindowShowStyle.Maximize);
ie.TextField(Find.ById("num1")).TypeText(number1.ToString());
ie.TextField(Find.ById("num2")).TypeText(number2.ToString());
ie.Button(Find.ById("btnCheck")).Click();
//预期结果
Arithmeticac =newArithmetic();
stringexpected = ac.addition(number1,number2).ToString();
//实际结果
stringactual = ie.Span(Find.ById("lblResult")).Text;
//断言测试结果是否正确
Assert.AreEqual(expected,actual);
}
//测试异常处理
[Test]
publicvoidExceptionTest()
{
//Watin测试代码
ie.TextField(Find.ById("num1")).TypeText("A");
ie.TextField(Find.ById("num2")).TypeText("1");
ie.Button(Find.ById("btnCheck")).Click();
//预期结果
stringexpected ="输入字符格式不正确!";
//实际结果
stringactual = ie.Span(Find.ById("lblResult")).Text;
//断言测试结果是否正确
Assert.AreEqual(expected, actual);
}
[TestFixtureTearDown]
publicvoidClearTest()
{
ie.Close();
}
}
}
测试结果如下:
结束语
在Nunit中使用Watin测试思路是这样的。如果有兴趣的话可以自己动手试试看,这是学习的佳途径。也可以下载附件中的代码进行学习。