解决问题:无法对 System程序集 添加Fakes程序集
为了在单元测试中指定DateTime.Now的值,我采用Microsoft Fakes技术的Shim。
主要参考了园里的http://www.cnblogs.com/FreeDong/p/3353111.html,编译时出了几千个警告,最终在“引用”中没有出现System.4.0.0.0.Fakes,当然了,这种情况下写using System.Fakes也编译出错。我的环境是VS2013 update4。中间经历了各种折腾,直到用VS2012 update2试了,奇迹地成功了。
最后打了VS2013 update5补丁,终于解决了这个问题。这个补丁的iso形式6G多。
打通了单元测试里如何指定DateTime.Now的问题,又向好用的单元测试迈了一大步。
Fakes的Shim技术非常不错,至今我也想不通是什么原理实现的,除非是.NET虚拟机专门提供的后门?知道的朋友请指点指点,万分感谢。
博主简介:佘焕敏(shé),洋名 Billy Sir。
关注编程基础技术,并致力于研究软件的自动化生成。 对编程规范化、面向对象的极致使用也有着浓厚的兴趣。 同时非常希望能够写程序到65岁。
只有工匠精神,才能把常人觉得单调乏味的代码,当作作品雕刻成艺术品。
重点:这里几乎每一篇文章,都是我认真创作的,凝结了心血。写作从来都不是一件容易的事,对从小语文不好的我而言,是难上加难。而且,你发现没有,文中没有广告。这篇文章介绍了为什么要写这些文章。
放个赞赏码,省得找起麻烦,万一真有人要赞赏呢。赞赏伤钱,三思后行。真要赞赏,一两块意思一下就好。