WatiN не работает с формой доступа к токену LinkedIn OAuth - PullRequest
0 голосов
/ 18 февраля 2010

WatiN поддерживает перенаправления?

Я пытаюсь автоматизировать тестирование, связанное в библиотеке интеграции с WatiN.

// url like "https://api.linkedin.com/uas/oauth/authorize?oauth_token=ba826cd4-644a-4709-b2de-bedb7c8fb5b4"
 using (var ie = new IE(authorizationUrl)) 
 {
    if (ie.TextField("email-oauthAuthorizeForm").Exists 
           && ie.TextField("password-oauthAuthorizeForm").Exists)
    {
         ie.TextField("email-oauthAuthorizeForm").Value = "some@mail.com";
         ie.TextField("password-oauthAuthorizeForm").Value = "password";
         ie.Button(Find.ByName("authorize")).Click();
         //ie.Forms[0].Submit();
    }
}

Кнопка нажата, и Internet Explorer немедленно перенаправляет на ту же страницу. Форма отправки имеет такое же поведение.

Что вы думаете об этом? Это проблема WatiN или охранник чуда?

Ответы [ 2 ]

1 голос
/ 19 февраля 2010

Обратите внимание, что Условия предоставления услуг LinkedIn не позволяют вам писать сценарий авторизации. Мы требуем, чтобы вы разрешили пользователю принять решение о предоставлении или отказе в доступе к вашей интеграции через предоставленную форму.

Если вам нужны автоматические тестовые наборы, я бы предложил один раз авторизовать токен доступа и сохранить его в своих тестовых сценариях.

1 голос
/ 18 февраля 2010

Я видел поведение ранее, когда страница перенаправляла на другую.

Итак, вам нужно снова создать отдельный объект IE для нового URL

После отправки страницы

ie.Button(Find.ByName("authorize")).Click(); 

создать новый сеанс просмотра для нового URL

using (var ie = new IE(urredirectedurl))   
{ 
     //ur code
}

Я не знаю, есть ли лучшие подходы, но у меня это работает ..

...