当前位置:  开发笔记 > 编程语言 > 正文

Windows窗体的Visual Studio单元测试

如何解决《Windows窗体的VisualStudio单元测试》经验,为你挑选了1个好方法。

我们正在Visual Studio 2008中开展一个项目.我们正在使用它提供的内置测试套件(Microsoft.VisualStudio.TestTools.UnitTesting命名空间).事实证明,令我们懊恼的是,大量的复杂性(以及错误)已经编码到我们的UI层中.虽然我们的单元测试在覆盖我们的业务层方面做得不错,但我们的UI层却是一个不断激动的来源.理想情况下,我们也希望对其进行单元测试.有没有人知道在Visual Studio中这样做的"微软兼容"方式?它是否会引入某种冲突来"混合"像nUnitForms这样的单元测试框架与微软的东西?是否有任何明显的熊陷阱我应该注意单元测试表格?



1> StackUnderfl..:

您需要重构UI,以便UI不需要任何单元测试.UI应包含最少或没有业务逻辑.有许多模式可以解决这个问题.Martin Fowler有一篇非常好的文章解释了很多关于这些模式的文章:http://martinfowler.com/eaaDev/uiArchs.html

Martin Fowler的重构书中有一小章讨论了重构不可测试的UI.您还可以阅读有效使用旧版代码.

注意:有一些工具可用于自动化UI测试.SilkTest出现在我的脑海里.但如果可能,我不会使用它们.


首先是鸡肉还是鸡蛋?为了重构,您需要进行测试,以便比较重构前后的结果.因此,如果您具有具有域/存储库逻辑的旧UI,则仅在UI中进行测试的唯一位置.
问题在于,很多UI逻辑非常关注UI,甚至不是业务.它的内容包括"当记录变脏并且他们更改屏幕时提示用户保存".和"确保用户在按下确定时填写了所有必需的数据输入字段"和其他控件
推荐阅读
k78283381
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有