首页 >后端开发 >Golang >有没有办法在没有 NewController 的情况下创建新的 gomock 控制器?

有没有办法在没有 NewController 的情况下创建新的 gomock 控制器?

WBOY
WBOY转载
2024-02-09 10:03:09765浏览

有没有办法在没有 NewController 的情况下创建新的 gomock 控制器?

在使用gomock进行单元测试时,创建新的控制器是一个常见的需求。然而,有时候我们可能没有NewController的情况下,该怎么办呢?答案是肯定的!在gomock中,我们可以通过使用mock控制器的方式来模拟一个新的控制器。这种方法可以让我们在没有实际的控制器实例的情况下,创建并使用一个虚拟的控制器来进行测试。这样,我们就可以独立地测试我们的代码逻辑,而不会受到外部资源的影响。

问题内容

如标题所述,有没有办法在没有 NewController 的情况下创建新的 gomock 控制器? 包里的评论说

// NewController returns a new Controller. It is the preferred way to create a
// Controller.

我想知道是否有一种方法可以在没有构造函数的情况下创建它?

我尝试了很多方法,例如使用 new() 创建它并直接分配变量,但控制器无法工作new() 创建它并直接分配变量,但控制器无法工作

解决方法

类型 Controller 有一个私有字段 expectedCalls 不能在构造函数之外设置。您需要使用 NewControllerWithContext

解决方法🎜🎜类型 Controller 有一个私有字段 expectedCalls 不能在构造函数之外设置。您需要使用 NewControllerWithContext 函数。🎜

以上是有没有办法在没有 NewController 的情况下创建新的 gomock 控制器?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:stackoverflow.com。如有侵权,请联系admin@php.cn删除