草庐IT

Unit8List

全部标签

unit-testing - 在 Golang 中测试接受不返回值的回调函数的方法

我正在尝试测试以下功能://SendRequestAsyncsendsrequestasynchronously,acceptscallback//func,whichitinvokes////Parameters://-`context`:somecontext//-`token`:sometoken//-`apiURL`:theURLtohit//-`callType`:thetypeofrequesttomake.Thisshouldbeoneof//theHTTPverbs(`"GET"`,`"POST"`,`"PUT"`,`"DELETE"`,...)//-`callBack

unit-testing - 如何编写When a function having the parameters of c *gin.Context 的测试用例

我正在用golang为我的项目编写Controller的测试用例。在Controller中有函数名称SaveProvider()有参数c*gin.Context我不知道如何将JSON传递给c*gin.Context这个参数以及我如何测试我在Controller中使用的函数谁能告诉我这段代码中的问题是什么。它也称为表驱动测试。packagecontrollersimport("bkapiv1/models""fmt""testing""github.com/gin-gonic/gin")funcTestSaveProvider(t*testing.T){typeargsstruct{c*

unit-testing - 如何在 Golang 中实现 stub ? stub 和模拟之间有什么区别?

关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭4年前。Improvethisquestion我在Golang的单元测试中使用模拟。但是在Golang的实现代码中如何区分stub和mock呢?

list - 何时选择容器/列表而不是 slice

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我还没有遇到过slice解决不了的问题。根据列表实现,对列表的任何插入最终都会创建一个新的元素结构,该结构将值包装到接口(interface){}列表的迭代也不支持范围。我发现一些文章说永远不要在生产中使用list.List。只是想知道,为什么它会出现在go源码包中[https://golang.org/pkg/container/list/]这里有人在生产中使用列表并获得了一些优势吗?

unit-testing - 为期望按下的键继续的函数编写 Golang 单元测试

我在Golang中有一个这样的函数:funcExit(codeint){.........keyboard.Open()deferkeyboard.Close()keyboard.GetKey()PrintAndLogInfo("\nBye.")os.Exit(code)}我正在使用以下库来使用此键盘功能github.com/eiannone/keyboard我想为此功能编写单元测试。但是,keyboard.GetKey()需要按下一个键。也许正因为如此,当我运行调用函数Exit的测试时,它失败并显示错误:panic:函数GetKey()应该在Open()之后调用[已恢复]panic:

go - 如何在 computeService.Zones.List(project) Google Cloud Platform API 中添加过滤器

我正在尝试在GoogleCloudPlatformAPI中过滤区域列表但我无法在Google中找到任何说明在API中放置过滤器的文档:req:=computeService.Zones.List(project)上面的代码行将列出GoogleCloudCompute中的区域在命令行中我们可以做同样的事情gcloudcomputezoneslist--filter="name:us-"谢谢,席德 最佳答案 它会在以下情况下帮助某人:req:=computeService.Zones.List("ProjectName")iferr:=

unit-testing - 如何测试/重构测试调用 http.ListenAndServe 的函数

我正在学习go并且正在开发一个简单的服务,该服务从队列中提取一些数据并将其保存在数据库中。它还运行一个网络服务器以允许抓取数据。现在我有两个go文件(为简洁起见省略了一些文本):funcmain(){parseConfig()s:=&Service{ServiceConfig:config}err:=s.Run()iferr!=nil{panic(err)}}然后是服务的定义(为简洁起见,再次省略了一些部分):func(s*Service)Run()error{iferr:=s.validate();err!=nil{returnerr}iferr:=s.initDB();err!=n

unit-testing - Uber Cadence 事件的单元测试上下文

我正在为使用UUID从联系人服务检索联系人的节奏事件功能编写单元测试。我想知道我应该将什么上下文传递给节奏事件。activity.Register(GetContactActivityFunc)funcGetContactActivityFunc(ctxcontext.Context,inputContactBbInput)(ContactBbOutput,error){...}这是测试函数。funcTestGetContactActivityFunc(t*testing.T){mockCSInterface:=&mocks.Interface{}csClient:=outbound.

list - 如何在golang中的列表中构建循环

我使用golang编写了一个函数来查找列表中的循环。但是我无法在列表中构造一个循环作为输入。请在下面找到代码,packagemainimport("container/list""fmt")funcmain(){l:=list.New()l.PushBack(0)l.PushBack(1)l.PushBack(2)l.PushBack(3)l.PushBack(4)l.PushBack(5)e6:=l.PushBack(6)l.PushBack(7)e8:=l.PushBack(8)e9:=l.InsertAfter(9,e8)l.InsertBefore(e9,e6)fore:=l.

unit-testing - 使用 aetest.NewContext 代替 endpoints.NewContext 以强一致性测试 go-endpoints

我有一个搜索方法:func(sa*SearchApi)Search(cendpoints.Context,r*SearchQuery)(*SearchResults,error){..}如您所见,它需要一个端点。上下文例如:ctx:=endpoints.NewContext(req1)但是对于aetest,我使用的是不同的上下文:otherCtx,err:=aetest.NewContext(&aetest.Options{"",true})特别是这个上下文有额外的强一致性选项-因为我正在设置数据所以我可以测试一个只读的api。我无法将otherCxt传递给我的Search方法,因为它