我有一组使用 GoConvey 和 Go 1.3.1 的测试,在本地工作得很好。但是,当我使用 Jenkins 触发构建时,也使用 Go 1.3.1,我从 Goconvey 那里得到了与我在测试中使用的 go 例程相关的恐慌。
测试可以在这里看到:
func TestListApplication(t *testing.T) {
s := &Session{}
s.Username = "foo"
s.Password = "bar"
ts := serveHTTP(t)
defer ts.Close()
s.Baseurl = ts.URL
s.initialize()
go func() {
<-s.Comms.AppCount
}()
Convey("TestListApplication", t, func() {
s.Comms.MainWaitGroup.Add(1)
application := &Application{}
err := json.Unmarshal(applicationJSON(), application)
So(err, ShouldBeNil)
revisions := &Revisions{}
err = json.Unmarshal(revisionsJSON(), revisions)
So(err, ShouldBeNil)
var wg sync.WaitGroup
wg.Add(1)
go func() {
defer wg.Done()
line := <-s.Comms.Msg
So(line, ShouldEqual, "3 admin foo\n")
}()
s.listApplication(application, revisions)
wg.Wait()
})
}
墨色风雨
繁星点点滴滴
相关分类