草庐IT

google-test

全部标签

testing - golang 单元测试 : inner function parameters

我在go函数中的工作流程很简单,但是当进行单元测试时,我卡在了将参数传递给内部函数,或者模拟内部函数返回结果。代码:packagemyFuncimport(myPackagebookPackage)funcInit()(errerror){err=getResource(myPackage.GetPath())...}funcgetResource(pathstring)(errerror){//getresourcefrompath...err:=bookPackage.GetBook(path)}测试:packagemyFuncimport"testing"funcTestInit

google-app-engine - 无法使用 appengine/log 找到日志

我有这个代码://main.gopackagemagnumimport("net/http""google.golang.org/appengine""google.golang.org/appengine/log")funcinit(){http.HandleFunc("/tasks/backup",handler)}funchandler(whttp.ResponseWriter,r*http.Request){ctx:=appengine.NewContext(r)log.Debugf(ctx,"TestingcrontasksusingGo")}//cron.yamlcron:

testing - 如何在单元测试中测试函数的输出 (stdout/stderr)

我有一个简单的函数要测试:func(t*Thing)print(min_verbosityint,messagestring){ift.verbosity>=minv{fmt.Print(message)}}但是我怎样才能测试函数实际发送到标准输出的内容呢?Test::Output在Perl中做我想做的事。我知道我可以编写自己的所有样板文件以在Go中执行相同的操作(如here所述):orig=os.Stdoutr,w,_=os.Pipe()thing.print("Somemessage")varbufbytes.Bufferio.Copy(&buf,r)w.Close()os.Std

google-app-engine - GAE 中 Dockerised Golang Web App 中的 smtp sendmail 不起作用

我在用Go编写的GAE上部署了一个docker化的网络应用程序。支付模块使用stripecheckoutAPI并在成功时触发电子邮件通知。调试时,我观察到以下代码行没有执行。我试过587端口,结果一样。err:=smtp.SendMail("smtp.gmail.com:465",auth,from,[]string{to},[]byte(msg))我在我的本地m/c上有相同的应用程序,此功能适用于它。不过,我没有在我的本地m/c上使用docker。我在“发件人”用户字段中使用与我的GAE帐户相同的用户凭据。这可能是代码失败的原因。或者应该在dockerfile中描述smtp服务身份验

google-chrome - 当我从 chrome websocket 发送 127+ 个字符时,我的 golang 服务器不能看到超过 126 个

我正在重新发明轮子并尝试使用位来实现一个简单的服务器。它几乎可以正常工作,但我不确定这个问题是我的客户端还是我的服务器。这是我从net.ConnRead传递结果字节数组的函数funcreadWsFrame(p[]byte){//processfirstbyteb:=p[0]fmt.Printf("firstbyte:%b\n",b)fin:=b&128//hopefully128,forfinop:=b&15//hopefully1,fortextfmt.Printf("fin:%d\nop:%d\n",fin,op)//processsecondbyteb=p[1]fmt.Print

mysql - 去+MySql : how easy is to migrate to GKE (Google Cloud Container Engine)?

我的项目目前由独立的云提供商托管。我正在使用2个虚拟机,以及Linux:一个托管Go应用程序一个托管MySql数据库我现在想迁移到GoogleCloudPlatform。您认为迁移到GoogleCointainerEngine(GKE)而不是GoogleComputeEngine(它与我在当前提供商处使用的虚拟机模型(IaaS)相同)是否有意义?我从未使用过Kubernetes和Docker。进行迁移有多容易?我会让我的生活变得毫无意义吗?我的简单模型的配置有多难? 最佳答案 IhaveneverusedKubernetesandD

unit-testing - 如何在 Golang 中正确模拟具有成员函数的结构?

我有两个结构:FunctionalityClient和TestClient,它们都实现了Interface。我有一个Interface类型的全局变量Client。我将实际客户端或模拟客户端分配给Client,具体取决于它是测试还是正常运行。Interface有一个方法Request我想在测试中模拟它。也就是说,我想:记录传递给函数的参数是什么从函数返回一些任意定义的返回值所以结构看起来像这样:typeTestClientstruct{recordedArgs[]interface{}returnValues[]interface{}}func(c*TestClient)Request(

google-app-engine - Goapp 服务 - 警告 : There are too many files

升级到go_appengineSDK1.9.54版本后,我总是得到以下警告,即使只是在应用程序目录中使用一两个.go文件。因此,不会自动检测到文件更改,也不会重建应用。$goapp服务go_appengine-1.9.54/google/appengine/tools/devappserver2/mtime_file_watcher.py:182:用户警告:您的应用程序中的文件太多,无法监控所有文件的更改。您可能必须重新启动开发服务器才能看到文件的一些更改。'您的应用程序中的文件太多'有什么想法吗? 最佳答案 我通过为项目中使用的大

unit-testing - 在 go 中正确测试 http 路由

我有5个端点,它们具有GET、POST和DELETE等方法来测试。我使用go的内置测试包编写了测试用例。我担心我遗漏了一些我不感兴趣的案例。我已经在代码审查中发布了我的测试用例进行审查,但我没有得到任何回应。我也关注了这个帖子TestingHTTProutesingolang.所有这些测试用例都在检查响应代码。问题是,我的大部分测试用例都遵循类似的模式,我以不同的格式发布数据并检查响应代码。我强烈觉得我错过了一些东西,当我将它推向产品时会破坏我的API。我需要对测试这些路由有一些了解,这样我才能有信心将API推向产品。main_test.gofuncTestSigHandler(t*t

Google Play Services登录在一部手机上成功,但在Antoher上失败

我在我的应用程序中成功实施了GooglePlay服务。我在关注访问您的Android游戏中的游戏游戏服务API登录名正在我的SonyXperiaZ5上工作,但我的旧GalaxyS2失败了:“无法登录。请检查您的网络连接并重试。什么可能导致这个?谢谢你的帮助。看答案问题是,我在另一个手机上使用了另一个帐户,而该帐户不是测试帐户。我只是将其添加到测试人员中,现在可以工作!(该应用在开发中)