问题标签 [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 投票
1 回答
215 浏览

microsoft-fakes - MS Fakes 可以创建未来的模拟对象吗?

在 TypeMock 中,您可以创建未来的模拟对象,例如:

MS Fakes 是否具有与上述相同的功能?

0 投票
1 回答
315 浏览

sharepoint - 使用 MS Fakes 时,如何应用索引?

我正在从 TypeMock 迁移到 MS Fakes。在 TypeMock 中,我可以做这样的事情:

在我的断言中,我可以检索由我的测试 foo 设置的字段值,并将其与我的期望进行比较。

使用 MS Fakes 时,我会这样做:

这一次,当我尝试检查我的值是否已使用以下方法设置时:

我最终得到一个编译错误:

在 SharePoint 世界中,像这样的索引几乎是标准做法,我的测试代码当然可以做到,并且似乎可以正常工作。我的问题是为什么我不能在我的测试中做到这一点?我已经尝试将 shim 投射到 SPListItem 但这是不允许的 - 我想我在这里遗漏了一些东西。有任何想法吗?

0 投票
1 回答
74 浏览

typemock - 使用 typemock 隔离器 7.1 注册 opencover

我已经在我的开发机器上安装了 Typemock Isoler 7.1 和 OpenCover 4.5。

当我进入 TypeMock 配置并列出已安装的分析器时,Opencover 没有出现。

我需要配置什么才能让 Typemock 将 opencover 的存在识别为链接的探查器?

0 投票
1 回答
212 浏览

typemock - Typemock 配置分析器覆盖范围

我已经安装了 TypeMock 7.4.3 并设置了完整的试用许可证,但我没有在配置工具中看到“Profilers/Code coverage”选项卡。我已经阅读了用户指南和 TypeMock 论坛,但没有找到答案。我需要使用配置文件链接来集成 TypeMock 和 OpenCover。试用版可以吗?

0 投票
1 回答
81 浏览

unit-testing - How to verify that private generic method was called?

I need to check whether private generic method was called with particular parameter type.

(Just stop thinking of telling me it's a bad practice to test private methods.)

has no overloads for specifying type parameters.

Is such verification possible?

Update

Since 7.5.2 API for this verification was added.

Here is the discussion.

0 投票
1 回答
160 浏览

c# - Typemock:如何对数据转换运行单元测试?

我正在尝试将单元测试添加到广泛使用AutoMapper的现有系统中。

Search类使用DB类。使用Automapper交换数据类型时会进行转换。

DB class: Returns DBSearchResult[]

Search class: Returns SearchResult(保存 List ofSearchResult和一个整数,比如说 1000)

DBSearchResult mock holds: DBSearchResult[2]

请注意,DBSearchResult使用 AutoMapper 将其转换为 SearchResult。

我的目的是检查Search该类SearchResult是否包含正确的值(2 和 1000),但这意味着Automapper会起作用。

我如何处理Automapper的数据类型转换而不模拟它并基本上测试一个模拟,而不是真正的实现?

0 投票
1 回答
383 浏览

c++ - 哪些模拟框架允许对遗留代码进行零更改?

我正在为一个大型 C++ 项目寻找一个模拟框架。我暂时选择了 GoogleTest 作为测试框架,所以我首先查看了 GoogleMocks。然而,后来我发现了 TypeMock 的 Isolator++,它有两个我非常喜欢的特性:

  1. 它可以模拟任何东西。
  2. 它允许您在不更改遗留代码的情况下添加测试覆盖率(使用方法调用拦截和其他一些魔法)。无需拼接接口即可添加测试。

缺点是 Isolator++ 是商业产品。我担心供应商锁定等。是否有其他具有相同功能的框架?也许是开源的?


让我也排除我在其他帖子中观察到的一个常见批评:“TypeMock 鼓励糟糕的设计。你应该改进你的设计,而不是使用支持坏习惯的工具。” (我的解释)

我的回答是:我确实想改进设计。我还想在重构之前添加测试覆盖率。为此,以零代码更改添加测试的能力非常有吸引力。

0 投票
1 回答
109 浏览

unit-testing - 如何扩展 Unity 容器以进行自动模拟?

我希望 Unity 在单元测试中自动为 SUT 的依赖项注入模拟。

我更喜欢某种IServiceProvider实现来自定义(如果需要)模拟创建。

可能吗?

PS 我们使用 TypeMock

0 投票
2 回答
127 浏览

c# - Typemock:用接口中的存根替换类时出错

我正在使用 Typemock 进行一些单元测试。就我而言,我正在为一个执行平面文件数据处理的程序编写测试。为了对该程序进行单元测试,我编写了一些存根类,它们实现了实际版本使用的相同接口,但不是写入文件系统,而是包含它们写入的内部字符串。

现在我试图让 Typemock 用测试中的存根变体替换类的实际版本,但它给了我以下错误: System.InvalidOperationException : Nullable object must have a value。

这是我试图用我的存根替换的实际版本(包含更多但错误不在这些行上):

存根类:

测试类和我的测试方法:

}

实际过程,这会触发错误

当从 InputFileProcessor 的构造函数调用时,错误会在 BatchRepository 的构造函数上触发。一开始我以为参数connectionstringname为null,但事实并非如此。为什么它最终还是在那条线上?使用交换实例方法,我认为它甚至不会到达那里,但最终会出现在存根类中。我认为我的交换实例的实现有问题,但我无法弄清楚。

我知道这样的测试可能并不完全是单元测试的内容,但它是测试程序输出和输入的最简单方法。例如,我需要确保无效文件触发相应的错误。能够轻松更改输入使其更易于管理。

0 投票
2 回答
384 浏览

c# - 不能对一个类型多次调用 Swap.AllInstances()

我有一个测试用例,它有一个问题,标题中的异常被抛出。

只有当静态方法 fake 也出现在测试中时,才会抛出异常。

我的假设是 StaticMethods fake 也在进行交换。如果是这种情况,我如何伪造静态方法并用我的假实例替换实例?