Нет, в WatiN не встроены какие-либо функциональные возможности для поддержки этого, но пост ГаретСтефенсона был верным. Вы можете написать тест NUnit, который даст вам проход / неудачу.
Прежде всего, чтобы IE работал с NUnit, вам нужно добавить следующее в ваш app.config
<configSections>
<sectionGroup name="NUnit">
<section name="TestRunner" type="System.Configuration.NameValueSectionHandler"/>
</sectionGroup>
</configSections>
<NUnit>
<TestRunner>
<!-- Valid values are STA,MTA. Others ignored. -->
<add key="ApartmentState" value="STA" />
</TestRunner>
</NUnit>
Вот пример теста. Он загружает главную страницу Google, захватывает некоторые элементы и утверждает, что они существуют: -
using WatiN.Core;
using NUnit.Framework;
namespace ConsoleApplication1
{
[TestFixture]
public class AutomatedTests
{
[Test]
public void DoGoogleTest()
{
using (IE browser = new IE())
{
browser.GoTo("www.google.co.uk");
Div logoDiv = browser.Div("hplogo");
Assert.IsTrue(logoDiv.Exists, "Logo div does not exist");
TextField searchText = browser.TextField("lst-ib");
Assert.IsTrue(searchText.Exists, "Search text field does not exist");
Button searchBtn = browser.Button(Find.ByName("btnK"));
Assert.IsTrue(searchBtn.Exists, "Search button does not exist");
Button nonExistantButton = browser.Button("garbagegarbagegarbage");
// This will cause the test to fail because the link doesn't (shouldn't!) exist.
// Comment it out and the test should pass
Assert.IsTrue(nonExistantButton.Exists, "Non-existant button does not exist");
}
}
}
}
К сожалению, NUnit не интегрируется автоматически с окнами Test Studios Visual View / Test List. Ваши варианты: -
Приведенный выше код дает мне результат: -
ConsoleApplication1.AutomatedTests.DoGoogleTest:
Non-existant button does not exist
Expected: True
But was: False
Если вы закомментируете последнюю строку, вы не получите сообщений об ошибках.
Если вам нужна дополнительная информация, дайте мне знать. НТН!
РЕДАКТИРОВАТЬ Добавлена ссылка для расширения Visual NUnit для VS2010