草庐IT

goconvey

全部标签

Golang 无法在同一个包中进行测试

在为我的一个源文件(commonutil.go)创建单元测试时遇到问题packageutilimport"github.com/nu7hatch/gouuid"//GenerateUUIDReturnsgeneratedUUIDsequencefuncGenerateUniqueID(hostnamestring)(string,error){varresult,err=uuid.NewV4()returnhostname+":"+result.String(),err}对于上面的源,我创建了测试文件“commonutil_test.go”(在同一个包中)packageutilimpo

testing - 为什么 GoConvey 测试失败并显示错误代码 0?

关闭。这个问题需要debuggingdetails.它目前不接受答案。编辑问题以包含desiredbehavior,aspecificproblemorerror,andtheshortestcodenecessarytoreproducetheproblem.这将有助于其他人回答问题。关闭4年前。Improvethisquestion我需要在构建过程中运行GoConvey测试我如何确保gotest以错误退出代码(非0)退出?

windows - 如何让 goconvey 在 Windows 7 上工作?

我开始使用golang进行一些开发工作,我很乐意使用goconvey提供的BDD风格。我刚刚将我的系统配置为为golang设置,我已经去github.com/smartystreets/goconvey一切顺利,但是当我在goconvey中编写一些简单的测试并尝试通过控制台执行它们时,我得到$gotest-vgobuildgithub.com/smartystreets/assertions:nobuildableGosourcefilesinFAILgo-tdd-take1[buildfailed]有什么技巧可以让它在Windows中运行吗?我在代理后面工作,但我不确定这是否是这里的

testing - echo c.Get ("user") 在测试环境中不起作用

我正在尝试测试基于echo框架/路由器构建的golangAPI。我有以下测试......funcTestLogout(t*testing.T){loadConfig()db:=stubDBs(t)Convey("Whenyoupostto/logout",t,func(){Convey("withavalidtoken,youshouldgetaasuccessmsgandbeloggedout",func(){e:=echo.New()e.Use(middleware.JWTWithConfig(middleware.JWTConfig{SigningKey:[]byte("secr

GoConvey 自定义断言未按预期工作

不确定为什么以下自定义断言不起作用,这似乎是一个编译错误,但我使用的语法似乎符合他们wiki页面中解释的内容:https://github.com/smartystreets/goconvey/wiki/Custom-Assertions我基本上想断言在结构中归档的time.Time表示过去24小时内的日期。//funcshouldBeInTheLast24Hours(targetDatetime.Time,footime.Time)string{funcshouldBeInTheLast24Hours(targetDatetime.Time)string{iftargetDate.B

聊一聊go的单元测试(goconvey、gomonkey、gomock)

文章目录概要一、测试框架1.1、testing1.2、stretchr/testify1.3、smartystreets/goconvey1.4、cweill/gotests二、打桩和mock2.1、打桩2.2、mock2.2.1、mockgen2.2.1、示例三、基准测试和模糊测试3.1、基准测试3.2、模糊测试四、总结4.1、小结4.2、其他4.3、参考资料概要软件测试是一个很宏大的概念,单元测试、集成测试、系统测试、黑盒测试、白盒测试、功能测试、性能测试、基准测试、压力测试等等都是软件测试下面的一种子概念。作为一名开发者,我们并不要理解每一种测试概念,但基准测试和单元测试在软件编写过程中

GoConvey框架使用指南

序言在软件开发中,产品代码的正确性通过测试代码来保证,而测试代码的正确性谁来保证?答案是毫无争议的,肯定是程序员自己。这就要求测试代码必须足够简单且表达力强,让错误无处藏身。我们要有一个好鼻子,能够嗅出测试的坏味道,及时的进行测试重构,从而让测试代码易于维护。笔者从大量的编码实践中感悟道:虽然能写出好的产品代码的程序员很牛,但能写出好的测试代码的程序员更牛,尤其对于TDD实践。要写出好的测试代码,必须精通相关的框架。对于Golang程序员来说,至少需要掌握下面两个框架:GoConveyGoMonkey本文将主要介绍GoConvey框架的基本使用方法,从而指导读者更好的进行测试实践,最终写出简单

testing - 使用 goconvey 明确指定要在 golang 中运行测试的主包

我如何用我的gotest命令明确地说只运行主包的测试,而不运行源目录中的其他包。目前它正在使用$gotest-v。但是......我也在使用goconvey并且它似乎正在递归运行。根据这个页面https://github.com/smartystreets/goconvey/wiki/Profiles我有一个文件,我可以在其中将参数传递给gotest命令。我知道您可以gotest-v./...进行递归或gotest-cpackagename/...但我如何才能对main进行呢? 最佳答案 Profiles是完成此任务的工具,但您也可

testing - 使用 goconvey 明确指定要在 golang 中运行测试的主包

我如何用我的gotest命令明确地说只运行主包的测试,而不运行源目录中的其他包。目前它正在使用$gotest-v。但是......我也在使用goconvey并且它似乎正在递归运行。根据这个页面https://github.com/smartystreets/goconvey/wiki/Profiles我有一个文件,我可以在其中将参数传递给gotest命令。我知道您可以gotest-v./...进行递归或gotest-cpackagename/...但我如何才能对main进行呢? 最佳答案 Profiles是完成此任务的工具,但您也可

go - 在端点 REST API 的 GoConvey 测试期间跳过某些包含静态内容的文件夹

我有一个public文件夹来提供静态资源。我使用Convey编写了测试以将静态内容保存在此文件夹中。由于在公用文件夹中创建了新文件,它陷入了一个永无止境的循环。integration.go:120:文件系统状态已修改,发布当前文件夹...14528482141452848215如何跳过这个文件夹?我尝试使用ignore将.goconvey文件添加到文件夹,但它不起作用。任何建议,如何跳过观看该文件夹? 最佳答案 GoConvey中有一个标志可以帮助跳过这些文件夹。goconvey-excludedDirs="public"https
12