问题标签 [typemock]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3054 浏览

c# - 如何在具体类上断言私有方法被称为(TypeMock/NMock/etc..)?

我正在尝试为下面的类中的“IsUnique”函数编写一个单元测试,如下所示:

我在这里唯一要测试的是 ValidateStuffExists 和 CheckUniqueness 被调用并传递了参数。这就是这个函数所做的一切,所以这就是我要测试的全部内容(我将弯曲“仅测试公共行为”伪规则并在这里测试私有方法,因为它要么有一个大的复杂方法/测试,要么测试 2 个私有方法)。

我对任何模拟库都持开放态度。我使用 NMock 并且认为它不适合任务 - 所以我下载了 TypeMock,因为我已经阅读并听说这是最好的,它甚至可以模拟具体的类/非接口方法调用......

我在我的测试中做了这样的事情,它在“Isolate.WhenCalled”行抛出异常:

这会引发类似“*** WhenCalled 不支持使用方法调用作为参数”的异常。

即使我可以用 CLR 类做同样的事情 - 我可以模拟 DateTime.Now 这样做(代码有效):

有人在这里有什么建议吗?我是否必须将这两种方法拆分为一个单独的类并制作一个接口是唯一的方法?或使我的方法/测试复杂化???这里一定有什么我想念的东西......非常感谢您提前提供的任何帮助。

编辑:我想我正在尝试为一个单元测试模拟类中的 2 个私有方法。我怎么能做到这一点而不必将这两种方法分成一个单独的类/接口?

0 投票
2 回答
1013 浏览

unit-testing - 有使用 TypeMock 的团队吗?是否值得付出高昂的代价?

我希望这个问题不是“有争议的”——我只是在问——这里有没有人购买了 TypeMock 并对结果感到满意(或不满意)?

我们是一家只有 12 名开发人员的小型开发商店,其中包括 2 名开发经理。到目前为止,我们一直在使用 NMock,但有一些限制。我已经完成了研究并开始使用 TypeMock,我喜欢它。它的语法非常简洁,基本上可以模拟所有内容,这对于遗留代码非常有用。

问题是 - 我如何向我的老板证明每个许可证花费 800-1200 美元购买一个有 4-5 个完全免费的竞争对手的 API?800-1200 美元是每个许可证的 Infragistics 或 Telerik 成本——而且肯定没有 4-5 个开源可比 UI 框架......这就是为什么我觉得它有点高估了,尽管它是一个很棒的库......

非常感谢任何意见/经验。

编辑:在找到 MOQ 后,我以为我坠入爱河 - 直到我发现 VB.NET 不完全支持它,因为 VB 缺少 lambda 子例程 =(。有人在 VB.NET 中使用 MOQ 吗?问题是我们是混合的shop - 我们使用 C# 进行 CRM 开发,使用 VB 进行其他一切。再次非常感谢任何指导

编辑:嗯..我在最小起订量中找不到 Isolate.WhenCalled() 等价物...这里有什么帮助吗?我想存根/模拟一个CONCRETE对象(不是模拟对象)的ReadOnly属性......我可以使用Isolate.WhenCalled和TM轻松做到这一点。起订量如何???

0 投票
2 回答
397 浏览

debugging - RhinoMocks 和 Heisenbugs

我最近一直在使用 RhinoMocks,但我一直遇到问题。如果我在模拟处于记录模式时闯入调试器并单步执行代码,我最终会遇到以下异常:

但是,如果我在不中断调试器的情况下执行相同的代码,它将成功执行并创建模拟。

我很确定这是因为调试器在对象上调用 ToString() 以在 Locals 和其他 Watch 窗口中显示它们。但由于模拟处于记录模式,RhinoMocks 认为对 ToString() 的调用是一种期望设置,因此并不完全正确。显然,这只发生在具体类的部分模拟中。针对接口的模拟不会表现出这种行为。

其他人遇到过这个问题吗?有什么简单的补救措施吗?其他框架如 moq 或 TypeMock 是否有此问题?

谢谢,

〜贾斯汀

0 投票
6 回答
11896 浏览

moq - Rhino mock vs Typemock vs JustMock vs

我需要为新项目选择模拟框架。

这些框架的优缺点是什么?有对照表吗?

我知道 JustMock 是我的 beta 阶段,但它现在看起来非常好(非常类似于 TypeMock)

编辑:我想 MS Mole 怎么样?

0 投票
4 回答
7463 浏览

entity-framework - EF4 - 可以模拟 ObjectContext 进行单元测试吗?

不使用 TypeMock Islolator 可以吗?我在网上找到了一些建议,例如传入仅元数据的连接字符串,但是除了 TypeMock 之外我遇到的任何东西似乎都没有真正允许可以注入服务以进行单元测试的模拟 ObjectContext。我应该为 TypeMock 支付 $$,还是有其他选择?没有人设法创建与 TypeMock 类似的开源软件吗?

0 投票
1 回答
1885 浏览

c# - 使用 TypeMock 模拟 Autofac 的“Resolve”扩展方法

我正在尝试模拟 Autofac 解析,例如

来自 Moq,TypeMock 的语法和异常让我很困惑。最初在 TestMethod 中运行它后,我不断收到类似于“WhenCalled 不能在没有补充行为的情况下运行”的异常。我尝试为每个人和他们的母亲定义行为,但无济于事。

然后我调试了测试运行,看到 Autofac 触发了一个实际的异常:IRubber 尚未注册。

所以很明显,静态 Resolve 函数没有被伪造,而且我无法让它被伪造,无论我如何连接它。

...从 Autofac 引发异常,抱怨 IComponentContext 不能为空。给它提供可能是伪造的 IContainer (或伪造 IComponentContext )让我回到“IRubber 未注册”错误。

0 投票
1 回答
255 浏览

silverlight - Silverlight 单元测试无法运行(使用 ReSharper 或 NUnit):出现依赖错误

CTru.Silverlight 找不到依赖库 Typemock.Isolator.VisualBasic & Typemock.ArrangeActAssert of Version=6.0.2.0 但这些库的版本为 6.0.3.0 已注册。

任何解决方法?
Typemock 6.0.2在哪里下载?

0 投票
1 回答
1194 浏览

silverlight - Silverlight 单元测试。运行测试时出错

我正在使用VS2010。Silverlight 4、NUnit 2.5.5 和 TypeMock TypemockIsolatorSetup6.0.3.619.msi

在测试项目中实现了 MVVM,PeopleViewModel 是我要测试的 ViewModel。

如果您使用其他产品进行 MVVM Silverlight 的单元测试,请告知。或者请帮助赢得这个 TypeMock。TIA

这是测试的代码:

在 ReSharper 中运行测试时,出现以下错误:

在 NUnit 中运行测试时,我得到:

更新:我没有关注这个问题。我已经切换到其他工具。

0 投票
4 回答
4689 浏览

c# - Typemock - 物有所值吗?

我知道这是一个主观问题...

Typemock 为每位开发人员 799 美元。5 个开发人员的许可证是一笔不小的数目。如果这里有人使用 Typemock 并且考虑到有开源的模拟框架,那么值得花钱吗?为什么?

0 投票
1 回答
2295 浏览

.net - “Typemock Isolator”如何模拟静态方法?

正如你们中的一些人所知道的,在 .net 中模拟静态方法通常是不可能的。

通过模拟,我的意思是用另一个具有相同签名的方法替换类中的方法,通常用于测试目的。

用于模拟方法的两种主要方法是将其声明为虚拟方法或在接口中定义它。.net 静态方法都不允许使用这两种方法。

然而,有一个昂贵的工具叫做“Typemock Isolator”,它允许模拟静态方法。Isolator 如何完成这个看似不可能的壮举?