我很难掌握我所看到的用于对网站的 UI 功能进行单元测试的方法(在本例中,使用 ASP.NET MVC3)。我尝试使用 Watin,从一般意义上讲,这是我想要的,除了必须依赖 Web 浏览器的实际实例才能使其工作,因为它使整个过程变得相当复杂,尤其是使用 CI。
在我的理想世界中,这就是我想象的测试工作方式:
- 将模型传递给 View ,获取输出
- 使用 View 输出填充编程 DOM
- 例如,测试将触发 DOM 事件来模拟单击按钮,并验证 DOM 是否按预期方式进行操作。
我意识到这需要 JavaScript 引擎和 DOM 实现,要么用 .NET 编写,要么使用 .NET 绑定(bind)。我的问题是否存在明显的解决方案?如果没有,我想要的处理方式有什么特别愚蠢/错误的地方吗?
最佳答案
您所描述的内容被称为 headless 浏览器 - XBrowser就是这样的一项努力,尽管最后一次签到是在 2010 年 4 月。
另请参阅this post关于在 .NET 开发中使用 HtmlUnit。
关于javascript - 单元测试 MVC3 客户端功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10776187/