GAE/GO datastoreのローカル開発をしてみる。
appengine/datastoreをローカルの開発環境でテストしたいときはどうするのかなと思ったけれど、以下でOKであった。
command
goapp test ./src/<path>
source
import ( "testing" "google.golang.org/appengine" "google.golang.org/appengine/aetest" "google.golang.org/appengine/datastore" ) func TestPostCompany(t *testing.T) { inst, err := aetest.NewInstance(nil) if err != nil { t.Fatalf("Failed to create instance: %v", err) } defer inst.Close() req1, err := inst.NewRequest("GET", "/gophers", nil) if err != nil { t.Fatalf("Failed to create req1: %v", err) } c1 := appengine.NewContext(req1) var companyResponse = struct { Name, Address, Nick, Key string }{} var key *datastore.Key key, _ = datastore.DecodeKey(companyResponse.Key) var savedCompany = companyResponse datastore.Get(c1, key, &savedCompany) datastore.Delete(c1, key) }
link
Local Unit Testing for Go | App Engine standard environment for Go | Google Cloud Platform
しかし、おそいな、、もっと早くできなものか、、