加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

如何在asp.net-mvc单元测试中生成视图?

发布时间:2020-12-16 03:46:22 所属栏目:asp.Net 来源:网络整理
导读:我试图在单元测试中生成视图,但我无法绕过丢失的VirtualPathProvider.大多数viewengines使用VirtualPathProviderViewEngine基类从当前的HostingEnvironment获取提供程序. protected VirtualPathProvider VirtualPathProvider { get { if (_vpp == null) { _v
我试图在单元测试中生成视图,但我无法绕过丢失的VirtualPathProvider.大多数viewengines使用VirtualPathProviderViewEngine基类从当前的HostingEnvironment获取提供程序.

protected VirtualPathProvider VirtualPathProvider {
    get {
        if (_vpp == null) {
            _vpp = HostingEnvironment.VirtualPathProvider;
        }
        return _vpp;
    }
    set {
        _vpp = value;
    }
}

在单元测试中没有HostingEnvironment,即使我创建了一个HostingEnvironment,也没有当前的VirtualPathProvider.

我该如何解决这个问题?我是否必须创建自定义FakeWebFormViewEngine?

解决方法

VS Team System 2010中有一些功能可用于验收测试,这些功能适用于您尝试执行的操作.如Gregory A Beamer Unit所述,MVC的测试是对控制器进行的.您还可以根据实施模型的方式测试模型.

这是存在很多争议的地方.有些人将模型视为业务实体,我将其视为特定于View的模型的表示.更多视图模型.由于我的模型中没有真正的功能,我不必测试它.我在MVC之外测试我的DAL,业务逻辑层. MVC确实是表示层的一部分.它是您的演示文稿的分层而不是您的应用程序.您仍然可以分层应用程序.

就单元测试而言,控制器是您测试的地方.如果有方法需要测试,您可以测试模型.至于视图,用户或通过像Watin这样的自动化测试它们.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读