草庐IT

test-git-flow

全部标签

git - 无法从 git 获取对 git post-update Hook 的依赖

我有一个golang项目,我想在推送它的同时在服务器上构建它post-updateHook被触发,一切都很好,项目被checkout到某个目录,但是,在它尝试获取依赖项之后(cd/go/src/kiyanov.com/app/和goget)它因错误而失败远程#cd/go/src/github.com/dgrijalva/jwt-go;git显示引用远程:致命:不是git存储库:“。”远程:包github.com/dgrijalva/jwt-go:退出状态128远程#cd/go/src/github.com/lib/pq;git显示引用远程:致命:不是git存储库:“。”远程:包gith

unit-testing - 在 GO 中测试 - 项目包中的代码覆盖率

我有一个关于在Go(lang)项目中生成代码覆盖率的问题。我有这个简单的结构:ROOT/config/handlers/lib/models/router/main.goconfig包含JSON格式的配置和一个简单的config.go读取和解析JSON文件并填充随后使用的Config结构初始化数据库连接时。handlers包含controllers(即router/routes.go中描述的相应METHOD+URL的处理程序)。lib包含一些数据库、请求响应器和记录器逻辑。models包含要从JSON和DB映射到的结构及其函数。最后router包含路由器和路由定义。基本上只是通过测试一

git - 如何配置 gogs 以快速加载大型 git 存储库?

我设置gogs在我的DigitalOcean虚拟机上,有1个CPU、1GBRAM和30GBSSD。它适用于小型存储库,一切都很活泼。为了测试gogs如何处理更大的存储库,我克隆/导入了git我的gogs安装的存储库。每次我通过web界面打开存储库时,加载至少需要5秒,CPU使用率徘徊在95%,内存在900MB。所以我假设我的虚拟机资源不足。所以我调整了虚拟机的大小并给了它8个CPU内核和16GB的RAM。然而,加载git存储库仍然需要大约5秒。我的猜测是,这要么是配置问题,要么是gogs本身及其处理git存储库的方式的问题。有没有办法让gogs快速处理大型存储库?

unit-testing - 如何在 Go 中将测试标记为不确定?

这个问题在这里已经有了答案:HowToWritePendingTestsInGo(1个回答)关闭6年前。在Go中编写测试时,如何将测试标记为不确定,即存在,但既不成功也不失败,例如因为它还没有实现?我有Node.js背景,例如在Mocha(Node.js的测试运行器)中,您可以定义一个没有实现的测试,然后Mocha将此测试标记为pending。你如何用Go做到这一点?(如果有任何区别,我在gotest之上使用gocheck。)

git - Hugo - 多语言支持错误

我克隆了一个Hugo项目,但是当我尝试编译它时,出现如下错误:function"i18n"notdefined此功能与多语言支持有关。我注意到发生了类似的情况here,我尝试按照指定的修复方法进行操作:gogetgithub.com/spf13/hugocd$GOPATH/src/github.com/spf13/hugogitremoteaddabourgetgit@github.com:abourget/hugogitcheckout-bmultilingualabourget/mastergoinstall-v但这并没有用,因为分支似乎已经不存在了,我也找不到关于它的更多评论。有

unit-testing - 使用 Gorilla MUX 对 App Engine 进行单元测试

我想为GoogleAppEngine中的处理程序编写测试,这些处理程序使用Gorillamux从请求URL读取变量。我从documentation了解到您可以创建一个虚假的上下文并请求用于测试。我在测试中直接调用处理程序,但处理程序没有按预期看到路径参数。funcTestRouter(t*testing.T){inst,_:=aetest.NewInstance(nil)//ignoringerrorforbrevitydeferinst.Close()//triedaddingthislinebecausethetestwouldnotworkwithorwithoutithttpt

macos - 更新到 macOS beta 4 后,go test -cover 抛出 "fatal error: unexpected signal during runtime execution"

Gobuild和gotest仍然有效。在更新到macOSbeta之前,我使用测试覆盖工具没有遇到任何问题。“去测试”工作正常;但是,所有覆盖率测试命令都抛出此错误(gotest-coverprofile=coverage.out抛出相同的问题)。如果有人知道如何解决这个问题,我将不胜感激!$gotest-covergobuildgithub.com/hunteramericano/ErrorQuiver:/usr/local/Cellar/go/1.6.3/libexec/pkg/tool/darwin_amd64/cover:signal:fatalerror:unexpecteds

testing - 如何重写此 select 语句以保证 100% 的测试覆盖率?

这让我疯狂。假设我有以下功能:funcMap(quit对于从src接收到的每个值v,它在dst上发送f(v),直到src或quit关闭且为空或从quit接收到值。现在,假设我想编写一个测试来证明它可以被取消:funcTestMapCancel(t*testing.T){varwgsync.WaitGroupquit:=make(chanstruct{})success:=make(chanstruct{})wg.Add(3)src:=//channelprovidingarbitraryvaluesuntilquitiscloseddst:=make(chaninterface{})/

bash - 预定义 test.coverprofile 标志

我正在使用go工具分析代码覆盖率。首先我创建测试二进制文件gotest-coverpkg="github.com/ypapax/flags"-c然后我运行它./flags.test-test.coverprofile=/tmp/out.outcat/tmp/out.out并查看个人资料内容PASScoverage:100.0%ofstatementsingithub.com/ypapax/flagsmode:setgithub.com/ypapax/flags/main.go:5.12,7.211问题是:是否可以预定义标志-test.coverprofile=/tmp/out.out这

testing - 去测试特定的文件输出

我是Go的新手,正在尝试从事一个项目。代码结构如下handlers/-time.go-time_test.go我已经试过gobuild,make(project)name问题是,我想在代码中添加一些控制台输出,以便我知道分支是否被覆盖(或用于调试)。现在,它对我不起作用。如果我使用:gotest-runtest_file_path如果只是输出Pass0.009s甚至我将t.Log("printlog")甚至fmt.Print("SayHello")放在测试函数中。如果我只使用gotest-vtest_file_path我会有undefinedvariable。构建和测试将失败。有什么建