使用C#打开并自动登录网站

时间:2013-12-16 12:12:00

标签: c# asp.net visual-studio-2010 web

我想通过使用C#单击Visual Studio中的开始按钮来加载网页并立即登录。

我使用过Watin框架,但似乎无法让代码工作。

我也有这个代码打开一个URL:

string url = "http://www.google.com";   
System.Diagnostics.Process proc = new System.Diagnostics.Process();    
System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo(url);   
proc.StartInfo = startInfo;    
proc.Start();

只打开一个网页,但我不确定如何自动输入登录详细信息。任何人都可以帮我吗?提前致谢!

下面是我试图从Watin使用的代码,它不起作用,它加载了一个网页,但只是给了本地主机。不是我想导航到的网站:

public void SearchForWatiNOnGoogle()
{
  using (var browser = new IE("http://www.google.com"))
  {
    browser.TextField(Find.ByName("q")).TypeText("WatiN");
    browser.Button(Find.ByName("btnG")).Click();

    Assert.IsTrue(browser.ContainsText("WatiN"));
  }
}

我使用了正确的引用,没有构建错误,只是加载了错误的页面。即使我试图在测试环境中创建项目,它仍然做同样的事情。

任何知道如何打开网页并自动登录的人都会很棒。

2 个答案:

答案 0 :(得分:0)

如果要将其用于自动UI测试,可以使用Coded Ui Tests。您可以使用MTM(Microsoft测试管理器)记录步骤,然后使用Coded Ui Tests生成代码。生成后,您可以多次运行它。我没有使用WatIn,但我认为它可以做同样的记录并在WatIn中生成代码。

录制时,您将手动执行操作,以便输入用户名/密码并按“登录”按钮。您可以稍后配置登录凭据,以便在更改时不需要重新生成测试。

如何录制和播放手动测试: http://msdn.microsoft.com/en-us/library/dd286714.aspx

如何:创建编码的UI测试: http://msdn.microsoft.com/en-us/library/dd286681(v=vs.100).aspx

如果您不打算进行自动UI测试,则WatIn和Coded Ui Tests不是

答案 1 :(得分:0)

2种可能性,即使您没有这样做进行测试,也可以使用硒。

但听起来你想要的是Windows窗体中的web browser control