草庐IT

monkey-testing

全部标签

unit-testing - 您如何为连接到授权帐户的库编写测试?

我正在编写一个使用gmailAPI的库。几乎每个功能都需要连接到gmailAPI并在所有需要进行身份验证的情况下正常工作。例如,这个库具有更改电子邮件标签的能力,因此为了测试它,我可以创建一个虚拟帐户、获取凭据并在收件箱中设置“测试电子邮件”、更改它们的标签并检查是否它们已正确更改,但第三方如何使用该gmail帐户执行单元测试?要使用它,他们需要访问该帐户,这将允许他们更改电子邮件标签(和其他内容)并使我的单元测试无效。我的另一个想法是即时生成一批测试电子邮件,然后在测试完成后删除它们的所有痕迹。这样每个运行测试的第三方都只能使用他们自己的测试帐户。我只是想知道是否有更标准的方法来做到

go - 如何使用 go test -run 运行特定的 golang 测试

我在这里做错了什么?我只想运行这个ConnectionPoolTest.TestNew,无论我尝试什么,我都会返回“没有要运行的测试”:gotest--check.list*.go|grepConnectioConnectionPoolTest.TestNew:gotest--runConnectionPoolTest*.gookcommand-line-arguments0.005s[noteststorun]:gotest--runConnectionPoolTest.TestNew*.gookcommand-line-arguments0.005s[noteststorun]

testing - 如何可靠地让项目在 go 中 Root ?

现在我使用runtime.Caller(0)结合path.Dir和filepath.Abs​​来获取到当前执行的文件并获取相对于它的项目根目录。假设我有一个这样的文件夹结构:$GOPATH/src/example.org/myproject$GOPATH/src/example.org/myproject/main.go$GOPATH/src/example.org/myproject/path$GOPATH/src/example.org/myproject/path/loader.go如果我想要我的项目根目录,我调用loader.go,它又通过runtime.Caller(0)获取

testing - Golang 测试标准输出

这个问题在这里已经有了答案:Howtotestafunction'soutput(stdout/stderr)inunittests(3个答案)关闭3年前。我正在尝试测试一些打印ANSI转义码的函数。例如//PrintalineinacolorfuncPrintlnColor(colorstring,a...interface{}){fmt.Print("\x1b[31m")fmt.Print(a...)fmt.Println("\x1b[0m")}我尝试使用Examples这样做,但他们似乎不喜欢转义码。有什么方法可以测试写入标准输出的内容吗?

unit-testing - 单元测试 golang 处理程序

这是我编写的用于从mongodb检索文档的处理程序。如果找到文档,我们将相应地加载和呈现模板。如果失败,它将重定向到404。funcEventNextHandler(whttp.ResponseWriter,r*http.Request){search:=bson.M{"data.start_time":bson.M{"$gte":time.Now()}}sort:="data.start_time"varresult*Eventerr:=db.Find(&Event{},search).Sort(sort).One(&result)iferr!=nil&&err!=mgo.ErrNo

unit-testing - 在 Visual Studio Code 中调试 Go 测试

在我的Windows机器上,我安装了VisualStudioCode。要手动运行测试,我进入控制台到项目文件夹并输入gotestmain_test.go它完美地工作。但我有一种情况需要调试我的测试以了解发生了什么。为此,我打开launch.json并添加一个配置{"name":"Tests","type":"go","request":"launch","mode":"test","remotePath":"","port":2346,"host":"127.0.0.1","program":"${workspaceRoot}","env":{},"args":["main_test.

opengl - "Radar approach"到视锥体剔除 : fail at first simple test?

尝试至少获得非常简单part1oftheLighthouse3DRadarFrustumCullingtutorial工作......并且我什至无法在我的渲染器中使该部分工作而感到非常困惑。所以第一步是:测试一个点是在近平面前面还是在远平面后面,如果是这样的话就提前剔除。(如果没有,您将执行进一步的测试,但我只停留在第一部分。)我使用2x2立方体的世界空间中心(x1y2z3),并有一个可以自由移动和旋转的相机。我所有的矢量和矩阵东西都必须相当可靠,因为渲染器否则工作得很好。所以这是我对第一部分的看法(在Go中),简单的“Zvsnear-or-far”测试:func(cam*Camera

unit-testing - 测试 Golang 协程

我一直在四处寻找,但到目前为止只找到了类似的文章here作者:AriejandeVroom。我想知道我是否可以将goroutine引入单元测试,以便它可以精确地计算正在运行的goroutines的并发数量,并可以告诉我它们是否是按照我所说的数量正确生成的goroutine。例如,我有以下代码..import("testing""github.com/stretchr/testify/assert")funccreateList(jobint,donechanbool){time.Sleep(500)//dosomethingtime.Sleep(500)done

unit-testing - Go 中最惯用的方法是测试依赖于具有大量方法的结构的代码?

假设我有一个UserRepository结构,它封装了与数据库交互的逻辑。这个结构有一组方法,比如:查找全部()findById()查找名称()保存()等等....还有另一个结构(例如,我们称之为UserService)依赖于UserRepository结构。为了测试UserService,我需要模拟UserRepository的功能。我知道这样做的唯一方法是为UserRepository提供接口(interface)并使UserService依赖于它而不是UserRepository结构。它将允许创建接口(interface)的模拟实现,并在测试中将其设置为UserService的依

unit-testing - 单元测试 mGo

我有一个接受database*mgo.Database参数的函数。funcmyFunc(db*mgo.Database){//doessomeoperationswithdb}我想编写一个单元测试并传入一个模拟的db对象,但我很难弄清楚如何使用golang来做到这一点。在其他语言中,我可以使用那里的测试框架来执行myMock=createMock("ClasstoMock"),但对于Go,我不确定如何执行此操作。我看了一眼gomock,但不确定这是否是唯一的方法,也不确定如何将mockgen工具与mgo一起使用。我还想也许可以编写一个接口(interface),该接口(interfac