如何以编程方式模拟按钮单击

时间:2010-03-05 08:06:59

标签: c# webclient webresponse

每个人都是海,   我正在开发一个应用程序,用户可以使用.net订阅或取消订阅一组邮件列表。我正在使用webclient类,如下所示

NameValueCollection formData = new NameValueCollection();
formData.Add("email", txt_emailid.Text);
WebClient webClient = new WebClient();
byte[] responseBytes = webClient.UploadValues(url, "POST", formData);
string response = Encoding.UTF8.GetString(responseBytes);

其中响应​​包含一个按钮(取消订阅)。我要做的是模拟(取消订阅)按钮,点击我的.net应用程序中的programmaticaly。有什么方法可以做到这一点吗?

感谢和安培;问候 Chaithu

2 个答案:

答案 0 :(得分:0)

听起来您尝试在网页上进行集成测试,或者几乎意味着与测试相同的情况。

您是否看过WATIN(http://watin.sourceforge.net/)点击该按钮,因为这样您就可以轻松找到按钮并单击它。这将在运行代码的系统上创建一个浏览器实例并执行与之关联的操作(从内存中我认为实例可以在最小化状态下打开)。你也应该查看Selenium。

如果你想通过WebClient类来实现,那么Darin的说法是正确的。请记住确保在表单数据中传递按钮的id,否则服务器将不知道单击了哪个按钮。

答案 1 :(得分:-2)

这取决于此按钮的作用。如果它发送HTTP请求,您可以再次使用WebClient通过发送所有必要参数来模拟它。