草庐IT

test-plugin

全部标签

unit-testing - Go 单元测试正在运行从 "go get"命令导入的包

我导入了一个包“gopkg.in/yaml.v2”。这是在目录结构下src/gopkg.in/yaml.v2main.goabc.goabc_test.go当我在构建期间运行命令gotest-v./...时,它也会从导入的包gopkg.in/yaml.v2运行单元测试.在我的情况下不需要。我是Go及其测试框架的新手。是否在谷歌中搜索了答案但找不到任何具体的答案? 最佳答案 go工具根据您的指示运行所有包的测试。3个点...是go工具的一个特性,它表示给定的包和在其子文件夹中找到的所有包。引用自CommandGo:Descriptio

unit-testing - Go 单元测试正在运行从 "go get"命令导入的包

我导入了一个包“gopkg.in/yaml.v2”。这是在目录结构下src/gopkg.in/yaml.v2main.goabc.goabc_test.go当我在构建期间运行命令gotest-v./...时,它也会从导入的包gopkg.in/yaml.v2运行单元测试.在我的情况下不需要。我是Go及其测试框架的新手。是否在谷歌中搜索了答案但找不到任何具体的答案? 最佳答案 go工具根据您的指示运行所有包的测试。3个点...是go工具的一个特性,它表示给定的包和在其子文件夹中找到的所有包。引用自CommandGo:Descriptio

unit-testing - 在 Golang 中测试文件系统的示例代码

我正在尝试为将与文件系统交互的函数编写单元测试,我希望能够在测试期间模拟文件系统。下面的代码是对this的回答。问题,您将在哪里创建一个文件系统接口(interface)以在测试期间使用,但我是Go的新手并且正在努力弄清楚如何使用它。请问有人能举个例子说明如何在测试中使用这个接口(interface)吗?varfsfileSystem=osFS{}typefileSysteminterface{Open(namestring)(file,error)Stat(namestring)(os.FileInfo,error)}typefileinterface{io.Closerio.Rea

unit-testing - 在 Golang 中测试文件系统的示例代码

我正在尝试为将与文件系统交互的函数编写单元测试,我希望能够在测试期间模拟文件系统。下面的代码是对this的回答。问题,您将在哪里创建一个文件系统接口(interface)以在测试期间使用,但我是Go的新手并且正在努力弄清楚如何使用它。请问有人能举个例子说明如何在测试中使用这个接口(interface)吗?varfsfileSystem=osFS{}typefileSysteminterface{Open(namestring)(file,error)Stat(namestring)(os.FileInfo,error)}typefileinterface{io.Closerio.Rea

testing - 只在测试文件中引用的go测试代码会被编译成二进制文件吗?

我想知道如果您使用gobuild./...编译二进制文件,哪些代码将被编译到go二进制文件中。这将编译一个包含cli程序的二进制文件。对于这个cli程序,我有测试代码和非测试代码。我目前有几种测试代码:foo_test.go包foo_testfoo_internal_test.go包footestutil.go包testutil提供测试工具函数非测试代码中实际没有引用任何测试代码。testutil函数仅在测试文件中导入。如果测试代码实际上被编译成二进制文件,这有多大问题? 最佳答案 Go二进制文件仅包含可从其main()访问的代码入

testing - 只在测试文件中引用的go测试代码会被编译成二进制文件吗?

我想知道如果您使用gobuild./...编译二进制文件,哪些代码将被编译到go二进制文件中。这将编译一个包含cli程序的二进制文件。对于这个cli程序,我有测试代码和非测试代码。我目前有几种测试代码:foo_test.go包foo_testfoo_internal_test.go包footestutil.go包testutil提供测试工具函数非测试代码中实际没有引用任何测试代码。testutil函数仅在测试文件中导入。如果测试代码实际上被编译成二进制文件,这有多大问题? 最佳答案 Go二进制文件仅包含可从其main()访问的代码入

testing - go test `-parallel` vs `-test.parallel` 哪个标志优先?

gotest的两个标志-parallel和-test.parallel之间的区别以及哪个标志优先?-parallelnAllowparallelexecutionoftestfunctionsthatcallt.Parallel.Thevalueofthisflagisthemaximumnumberofteststorunsimultaneously;bydefault,itissettothevalueofGOMAXPROCS.Notethat-parallelonlyapplieswithinasingletestbinary.The'gotest'commandmayrunte

testing - go test `-parallel` vs `-test.parallel` 哪个标志优先?

gotest的两个标志-parallel和-test.parallel之间的区别以及哪个标志优先?-parallelnAllowparallelexecutionoftestfunctionsthatcallt.Parallel.Thevalueofthisflagisthemaximumnumberofteststorunsimultaneously;bydefault,itissettothevalueofGOMAXPROCS.Notethat-parallelonlyapplieswithinasingletestbinary.The'gotest'commandmayrunte

mysql - 去-mysql : authentication plugin not supported while connecting from go app container to mysql container

我正在将我的linuxdocker环境从我的mac移植到我的笔记本电脑上。我有2个docker镜像,一个是mysql:latest数据库镜像,另一个是go:alpine应用服务器镜像。在我的mac上,我使用bash脚本将环境变量传递给应用服务器,以将数据库连接字符串组合到mysql。连接字符串是:root:password@tcp(mysql_host:3306)/dbname当我在我的mac上运行它时,数据库连接成功,但在我的PC上却没有。在Windows10上,我安装了Ubuntu和Windows版Docker。在bash中,我安装了docker客户端,我可以通过设置DOCKER_

mysql - 去-mysql : authentication plugin not supported while connecting from go app container to mysql container

我正在将我的linuxdocker环境从我的mac移植到我的笔记本电脑上。我有2个docker镜像,一个是mysql:latest数据库镜像,另一个是go:alpine应用服务器镜像。在我的mac上,我使用bash脚本将环境变量传递给应用服务器,以将数据库连接字符串组合到mysql。连接字符串是:root:password@tcp(mysql_host:3306)/dbname当我在我的mac上运行它时,数据库连接成功,但在我的PC上却没有。在Windows10上,我安装了Ubuntu和Windows版Docker。在bash中,我安装了docker客户端,我可以通过设置DOCKER_