我正在编写一个WinForms应用程序,它将执行一些用Web测试框架编写的Web UI测试。
有没有办法可以在被测试的页面上获取错误(我通过方法参数指定页面)而不用屏幕抓取页面?例如,如果它抛出:
从客户端
检测到潜在危险的Request.QueryString值我怎样才能发现这个?
一种方法是刮掉标题。
答案 0 :(得分:3)
我实际上建议你研究一下名为ELMAH的东西。如果您将ELMAH放在ASP.NET网站上,它将自动记录并处理您的应用程序在测试时抛出的所有异常。您可以将所有内容存储为XML文件或存储在数据库中。您也可以直接通过电子邮件向您发送黄色死亡屏幕(包括堆栈跟踪)。
然后尝试将相同的功能编程到winforms应用程序中会更容易。只需使用您的应用程序击败ASP.NET站点,让ELMAH处理错误记录。
答案 1 :(得分:1)
如何在应用程序级别捕获错误(使用.asax中的全局处理程序)并将异常数据发送到db?
然后你可以查询。
嗯,甚至,实现WCF双重绑定,当发生错误时,您调用客户端监听。您的Windows窗体可以是等待通知的代理。但也许,这可能不是一个好主意,因为您希望将测试与您的应用程序分开。
使用像Enterprise库这样的东西登录MSMQ怎么样,你可以通过windows窗体监听它?
编辑 - 上面的ELMAH建议看起来也不错