草庐IT

run_test

全部标签

google-app-engine - `go run *.go` 中的文件如何在不导入的情况下访问函数?

我正在关注Bookshelftutorial关于在GoogleAppEngine上构建网络服务。要启动应用程序,本教程运行gorunapp.goauth.gotemplate.go。我不明白这是怎么回事。例如,parseTemplatemethod是怎样的?来自template.go用于app.go没有template.go的导入语句?我的理解是,在Go项目中,我们有一个具有main方法的入口点文件。然后该文件导入包以在内部使用它们。同时运行这三个文件有什么好处? 最佳答案 该示例使用单个包,特别是main包来实现所有内容。每个包都

google-app-engine - `go run *.go` 中的文件如何在不导入的情况下访问函数?

我正在关注Bookshelftutorial关于在GoogleAppEngine上构建网络服务。要启动应用程序,本教程运行gorunapp.goauth.gotemplate.go。我不明白这是怎么回事。例如,parseTemplatemethod是怎样的?来自template.go用于app.go没有template.go的导入语句?我的理解是,在Go项目中,我们有一个具有main方法的入口点文件。然后该文件导入包以在内部使用它们。同时运行这三个文件有什么好处? 最佳答案 该示例使用单个包,特别是main包来实现所有内容。每个包都

unit-testing - 如何在 golang 中动态跳过测试?

我们在HTTP服务器上有一个特殊的文本文件,其中包含我们希望在golang测试运行时跳过的文件名和测试函数。我必须构建一些东西来下载该测试文件,解析应该跳过的文件名和测试函数,然后最终运行我们的go测试并正确地跳过在输入文件中找到的测试函数。在golang中进行这项工作的正确方法是什么?(我意识到这听起来像是一种不寻常的跳过方式,但我们真的希望按照我所描述的那样进行这项工作,原因与这个问题无关。) 最佳答案 您可以使用(*testing.T).Skip()函数跳过测试用例。可以在go的测试文件的init函数中下载测试文件。然后解析并

unit-testing - 如何在 golang 中动态跳过测试?

我们在HTTP服务器上有一个特殊的文本文件,其中包含我们希望在golang测试运行时跳过的文件名和测试函数。我必须构建一些东西来下载该测试文件,解析应该跳过的文件名和测试函数,然后最终运行我们的go测试并正确地跳过在输入文件中找到的测试函数。在golang中进行这项工作的正确方法是什么?(我意识到这听起来像是一种不寻常的跳过方式,但我们真的希望按照我所描述的那样进行这项工作,原因与这个问题无关。) 最佳答案 您可以使用(*testing.T).Skip()函数跳过测试用例。可以在go的测试文件的init函数中下载测试文件。然后解析并

unit-testing - 如何使用 http 作为依赖项进行单元测试

我有以下按预期工作的功能。现在我想为它运行一个单元测试。funchttpClient(cc[]string,methodhttp)([]byte,error){httpClient:=http.Client{}req,err:=http.NewRequest(http.MethodPost,c[0]+"/oauth/token",nil)iferr!=nil{fmt.error(err)}//Herewearepassinguserandpasswordreq.SetBasicAuth(c[1],c[2])res,err:=httpClient.Do(req)iferr!=nil{fm

unit-testing - 如何使用 http 作为依赖项进行单元测试

我有以下按预期工作的功能。现在我想为它运行一个单元测试。funchttpClient(cc[]string,methodhttp)([]byte,error){httpClient:=http.Client{}req,err:=http.NewRequest(http.MethodPost,c[0]+"/oauth/token",nil)iferr!=nil{fmt.error(err)}//Herewearepassinguserandpasswordreq.SetBasicAuth(c[1],c[2])res,err:=httpClient.Do(req)iferr!=nil{fm

go - exec.Run - 这个 Go 程序有什么问题?

这个Golang程序不是应该将目录列表输出到标准输出吗?它编译正常,但什么也不做。packagemainimport"exec"funcmain(){argv:=[]string{"-la"}envv:=[]string{}exec.Run("ls",argv,envv,"",exec.DevNull,exec.PassThrough,exec.MergeWithStdout)} 最佳答案 这个有效:packagemainimport"exec"funcmain(){cmd,err:=exec.Run("/bin/ls",[]str

go - exec.Run - 这个 Go 程序有什么问题?

这个Golang程序不是应该将目录列表输出到标准输出吗?它编译正常,但什么也不做。packagemainimport"exec"funcmain(){argv:=[]string{"-la"}envv:=[]string{}exec.Run("ls",argv,envv,"",exec.DevNull,exec.PassThrough,exec.MergeWithStdout)} 最佳答案 这个有效:packagemainimport"exec"funcmain(){cmd,err:=exec.Run("/bin/ls",[]str

unit-testing - Go 单元测试中的包可见性

在Go中给定以下代码文件(名为server.go):packageglimpsefuncSplitHeader()string{return"hithere"}和附带的测试文件(server_test.go):packageglimpseimport("testing")funcTestSplitHeader(t*testing.T){answer:=SplitHeader()ifanswer==""{t.Error("Noreturnvalue")}}为什么是下面的命令:去测试server_test.go返回#command-line-arguments./server_test.g

unit-testing - Go 单元测试中的包可见性

在Go中给定以下代码文件(名为server.go):packageglimpsefuncSplitHeader()string{return"hithere"}和附带的测试文件(server_test.go):packageglimpseimport("testing")funcTestSplitHeader(t*testing.T){answer:=SplitHeader()ifanswer==""{t.Error("Noreturnvalue")}}为什么是下面的命令:去测试server_test.go返回#command-line-arguments./server_test.g