golang基础-单元测试与mock


当前第2页 返回上一页

client.go:

 package rpc  //go:generate mockery -name=Client type Client interface {     Get(key string) (data interface{}, err error) } type ClientImpl struct {     Ct Client } func (p *ClientImpl) Get(key string) (data interface{}, err error) {     if mockCondition  {         return p.Ct.Get(key)     }     // real logic } 复制代码

client_test.go

package rpc  import (     "fmt"     "test/mocktest/mocks"     "testing" ) type User struct {     Age  int      Name string } func TestMock(t *testing.T) {     convey.Convey("TestMock", t, func() {         mc := &mocks.Client{}         var u = &User{Age: 15, Name: "alice"}         mc.On("Get", "alice").Return(u, nil)         ci.Ct = mc         data, err := ci.Get("alice")         convey.So(data.Age, convey.ShouldEqual, 15)     }



本文来自:51CTO博客

感谢作者:mob604756e80bb7

查看原文:golang基础-单元测试与mock

返回前面的内容

相关阅读 >>

安装Go语言支持及Gogs版本管理工具

02 - 【Go语言学习笔记】变量和常量

Go封装、继承、多态

etcd包导入坑

Golang协程如何关闭

Golang开发工程师是做什么的

Golang组件化网络服务器框架halia指南

Goroutine轻量的秘密

Golint的简易使用方法

Golang接口可以嵌套吗

更多相关阅读请进入《Go》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...