Я пытаюсь заставить WatiN работать с MSpec в VS2010, используя TestDriven.Net. Мой код выглядит следующим образом:
[Subject("Whatever")]
public class when_on_home_page {
private static IE browser;
Establish context = () =>
browser = new IE();
Because of = () => {
browser.GoTo("http://localhost:1234/");
browser.WaitForComplete();
};
It should_show_add_details_link = () =>
browser.Link(Find.ByValue("Add Details")).Exists.ShouldBeTrue();
}
Когда я запускаю это, браузер загружает страницу, но когда он проверяет ссылку, я получаю:
Как бы то ни было, когда на главной странице
»должна отображаться ссылка на добавление сведений (НЕУДАЧА)Не удалось выполнить проверку «должна отображаться ссылка на добавление сведений»: System.UnauthorizedAccessException: доступ запрещен. (Исключение из HRESULT: 0x80070005 (E_ACCESSDENIED)) в mshtml.IHTMLElementCollection.tags (Object tagName) в WatiN.Core.Native.InternetExplorer.IEElementCollection.GetElementsByTag (String tagName) в WatiN.ElementsTag (String tagName) в WatiN.Elements tag (String tagName). .Core.NativeElementFinder.d__2.MoveNext () в WatiN.Core.ElementFinder.FindFirst () в WatiN.Core.Element.FindNativeElementInternal () в WatiN.Core.Element.get_Exists () NavigationSpecs.cs (20,0): at RoboWeb.Specs.when_on_home_page. ‹. Ctor> b__2 () в Machine.Specifications.Model.Specification.InvokeSpecificationField () в Machine.Specifications.Model.Specification.Verify ()
Осмотревшись, я проверил следующее:
- VS работает от имени администратора
- TestDriven.Net запускает все в режиме STA, видимо
- В IE отключен защищенный режим
- Я не могу добавить сайт в список надежных сайтов, предположительно потому, что он работает локально.
- Я вызываю WaitForComplete (), а также пробовал Thread.Sleep ()
Я также пробовал с FireFox, но он просто вылетает.
Есть идеи, что я здесь делаю не так?