问题标签 [gomock]

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 回答
327 浏览

go - 向项目添加 gomock 测试会在运行测试时提供“构建约束排除所有 Go 文件”

我将使用 gomock 的包的测试文件添加到现有的 Go 项目中,现在我得到了

...导入 github.com/golang/mock:构建约束排除 /home/bserdar/go/pkg/mod/github.com/golang/mock@v1.4.3 中的所有 Go 文件

当我go test使用 gomock 从其中一个包中运行时。我的项目中没有构建约束。知道这里有什么问题吗?

0 投票
1 回答
1808 浏览

unit-testing - 如何使用 gomock (或类似的)来模拟/验证对数据库的调用?

转到这里,使用gorm或/映射到数据库 (PSQL)。

我有以下代码:

我正在尝试为它编写一个单元测试,如下所示:

当我运行它时,我得到无效的内存地址或 nil 指针取消引用错误,因为我没有*gorm.DB在我的OrderPersister实例上实例化设置 a。有没有一种简单的方法来模拟/存根,以便我的测试确认我们尝试查询orders表并返回或/映射结果?

0 投票
0 回答
66 浏览

unit-testing - 无法加载源“”。在 golang 中执行测试用例时

我正在使用 gomock 编写测试用例,我尝试使用 gomock 的 EXPECT() 行为设置函数的参数。

这就是我想要做的。我正在尝试模拟签名如下所示的函数的行为:

我已经使用gomock为这个函数实现了模拟。我想实现动态返回行为。以下是我正在尝试做的事情。

我想在这里实现一个动态行为。根据 nextPage 的值,我想在每次调用 post 函数时设置不同的值。

我正在使用 Visual Studio 代码来运行测试用例。但是在执行 SetArg(4, getResultResponse()) 语句后运行测试用例时,我看到消息无法加载源''。 该参数的值未按预期设置。因此,我无法正确执行我的测试用例。无法理解这是什么原因

0 投票
1 回答
855 浏览

unit-testing - 如何使用 go mock-gen 模拟在 Golang usng echo 中为端点 url 编写单元测试?

我为登录编写了这个 go 代码。现在我想对我的代码进行单元测试。此代码取决于控制器到服务层,然后是服务到存储库层。我想使用 gomock 工具进行模拟,如果有其他请建议我。我正在使用回声框架。这里

0 投票
1 回答
2860 浏览

go - gomock 未接来电

我正在尝试使用 gomock 模拟以下方法

界面:

套件测试:

模拟:

当我尝试运行测试时,我收到了这条消息:

我哪里错了?

0 投票
3 回答
274 浏览

go - 如何模拟net.Interface

我试图在 Go 中模拟 net.Interface,我使用 net.Interfaces() 并且我想要一个固定的回报。但是 net.Interface 不是接口,所以我不能用 gomock 模拟它。

也许我测试的方式错了。

这是我要测试的方法:

这是我暂时写的测试

最小可复制示例:

0 投票
1 回答
66 浏览

go - 有没有办法使用 gomock 模拟类型断言?

我是 golang 的新手并Gomock用于测试。我已经为接口生成了模拟foo,但在我的代码中有一段使用的逻辑foo.(type)

我可以知道是否有办法模拟这个并返回我选择的类型?如果没有,那么做这件事的好方法是什么?谢谢!

例如。代码片段:

0 投票
1 回答
119 浏览

go - Gomock 未公开的接口作为参数

我正在使用gomock(源模式)并希望模拟一段看起来像这样的代码:

其中未导出的foo接口用作MethodB(). 使用 mockgen 后,mockedMethodB()看起来像:

这是错误的,因为foo未导出且无法访问。

想知道是否有办法解决它(例如,foo代替Mockfoo作为论点)?

PS。我也尝试了 gomockreflect模式,但它有同样的问题。

0 投票
1 回答
117 浏览

go - Gomock 不能使用类型 map[string]*mockFoo 作为 map[string]foo

我正在使用 gomock,并且我有一段我想测试的示例代码。

在我的测试中,我为 foo 生成了一个模拟,称为 mockFoo。使用 mockgen v1.6.0 为接口 foo 生成模拟。

我的测试代码为:

TLDR 是map[string]*mockFoo不能用作类型的map[string]Foo

我可以知道我在这里做错了什么还是这是预期的行为?谢谢。

0 投票
2 回答
44 浏览

go - 如何在 golang 中模拟 go-plugin 函数?

但我不能这样做,因为plugin.Plugin.lookup

你有另一种方法来解决它吗?