当前位置:  开发笔记 > 后端 > 正文

ASP.NET - 如何对WebControls进行单元测试?

如何解决《ASP.NET-如何对WebControls进行单元测试?》经验,为你挑选了2个好方法。

好的.

所以我认为这是我进入单元测试的时间,因为每个人都在敲打它已经足够长的时间了.我已经安装了NUnit并经历了一些"单元测试介绍"类型教程.

我目前正在组建一个小框架来帮助重建我们的一个Web应用程序,所以我为我的框架创建了一个VS2008项目,我想在我去的时候进行单元测试.

我如何进行单元测试WebControls?这些方法都是受保护的或私有的,因为它是一个框架,除了WebControl之外别无其他.

有什么指针吗?

伯恩斯



1> Mendelt..:

您可以在不使用完整框架的情况下执行模型 - 视图 - 控制器或模型 - 视图 - 演示者类型体系结构.您已经发现单元测试ui组件很难.有办法,但你可能不想走这条路.通常这会使你的测试很难维护,更多的维护噩梦是程序员可以做的事情:-)

尝试在"控制器"或"演示者"类中分离要测试的功能.然后测试那个班级.为了使其更易于测试,您可以隐藏界面后面的usercontrol类(视图),并使控制器或演示者通过界面与视图对话.这样你就可以在测试中模拟视图.

我知道这听起来像很多工作,它似乎是一种解决方法但是如果你习惯了它,这是一个非常好的架构,可以更容易地改变你的行为.当您真正需要时,您可以随时开始使用"真正的"mvc框架:-)



2> chakrit..:

使用该assembly:InternalsVisibleTo属性,您将能够访问这些私有成员.

将它放在webcontrol项目的AssemblyInfo.cs中(在Properties节点下)

[assembly:InternalsVisibleTo("YourTestProjectName")]

推荐阅读
手机用户2402851155
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有