【问题标题】:simulate Web Page keystroke模拟网页按键
【发布时间】:2009-09-25 23:28:27
【问题描述】:

C# 应用程序是否可以在网页上模拟击键? 例如,有一个jsp页面,我需要输入文本数据并点击该页面上的提交按钮。

【问题讨论】:

    标签: c#


    【解决方案1】:

    有很多不同的选择:

    是提供功能性网络测试的开源项目。您可以使用 NUnit、xUnit、mbUnit 等测试框架来回放您的测试。

    【讨论】:

      【解决方案2】:

      试试Selenium Remote Control。 Selenium 基本上是一个用于网站的单元测试框架,而远程控制部分只是一个您可以在 C#(以及其他语言)中使用的 API。

      【讨论】:

      【解决方案3】:

      您可以使用webbrowser control 来加载页面...输入数据并按下subit 按钮(或任何按钮)。

      这是一个示例 VB.net 代码,输入用户名和密码并单击“登录”按钮。

      WebBrowser1.Navigate("www.foo.com/login.php")
      
      While WebBrowser1.ReadyState <> WebBrowserReadyState.Complete
         Application.DoEvents()
      End While
      
      WebBrowser1.Document.GetElementById("user_login").SetAttribute("Value", "username")
                          WebBrowser1.Document.GetElementById("user_pass").SetAttribute("Value","password")
      WebBrowser1.Document.Forms("loginform").InvokeMember("submit")
      

      我知道您正在寻找 c# 代码。给我 5 分钟,我会发帖。

      编辑:这里是 c# 代码

      WebBrowser1.Navigate("www.foo.com/login.php");
      
           while (WebBrowser1.ReadyState != WebBrowserReadyState.Complete) {
               Application.DoEvents();
           }
      
      WebBrowser1.Document.GetElementById("user_login").SetAttribute("Value", "username");
      WebBrowser1.Document.GetElementById("user_pass").SetAttribute("Value", "password");
      WebBrowser1.Document.Forms("loginform").InvokeMember("submit");
      

      注意:我现在没有 VS。如果这段代码不起作用,请告诉我

      【讨论】:

        【解决方案4】:

        如果您会阅读意大利语,请查看此帖子: http://www.innovactive.it/post/2009/09/04/Test-della-UI-di-una-applicazione-con-Selenium.aspx 这是关于使用 Selenium 测试应用程序 UI。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-01-31
          • 2013-07-24
          • 2020-04-29
          • 2011-03-04
          • 2010-11-22
          • 2011-11-10
          相关资源
          最近更新 更多