C# WatiN不适用于LinkedIn OAuth令牌访问表单

C# WatiN不适用于LinkedIn OAuth令牌访问表单,c#,.net,watin,linkedin,C#,.net,Watin,Linkedin,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

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的问题还是linkedin guard的问题?

我之前看到过这种行为,当页面重定向到另一个页面时

因此,您需要为新url再次创建一个单独的IE对象

页面提交后

ie.Button(Find.ByName("authorize")).Click(); 
为新URL创建新watin会话

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

我不知道有没有更好的方法可用,但这对我来说很有效。

请注意,LinkedIn的服务条款不允许您编写授权流程脚本。我们要求您让用户通过提供的表单决定授予或拒绝访问您的集成

如果是自动化测试套件,我建议您授权一次访问令牌,并将其与测试脚本一起存储