我非常喜欢moq模拟框架。我在几个项目中使用过它。不幸的是,我的一位客户要求我们使用VB.Net。不是我的偏好,但嘿,.Net是.Net,对吧?
我听说moq对VB有些麻烦。这是真的?是这样,有什么样的麻烦?鉴于.Net的语言不可知性,我希望它能正常工作。
我是否应该考虑使用其他一些模拟框架与VB一起使用?
答案 0 :(得分:6)
VB.net关于模拟框架的主要问题是,与C#相反,VB没有匿名方法,只有Lambda表达式(没有办法声明匿名Action委托)。
这严重限制了可能性。 带参数的属性也存在已知问题。
此外,lambdas语言的语法不会导致像C#一样干净,可读性方面(请不要火焰,我是VB用户,我每天都会错过一些C#功能),这部分是对Moq的吸引力。
我所知道的唯一一个关于VB的测试框架是TypeMock。他们试图设计一些与VB语法融合的东西。
答案 1 :(得分:1)
AFAIK Typemock Isolator是唯一可以完全模拟VB.NET的工具。他们特别为此制作了API。