タグ

testとGoに関するYudoufuのブックマーク (3)

  • net/httptestでgojiのテストをする — そこはかとなく書くよん。 ドキュメント

    net/httptestでgojiのテストをする¶ goji でWebアプリを書こうとしていま す。APIサーバーとして使うときに、テストが気になります。 golangnet/http/httptest というhttpのtestを行うパッ ケージが最初からついています。これを使うと簡単にテストを記述できます。 httptest.Serverはlocalのloopbackインタフェースでサーバーを作成します。 (2014/11/20追記): mopemopeさんから「Routingのテストを入れたほうがいいのでは」というご指摘を受けたので、Route設定を別関数に分け、テストからも使うようにしました。 サンプルアプリ¶ /hello/hoge というURLにアクセスが来たらJSONを返す、という単純なア プリです。 package main import ( "encoding/json

  • Go の Test に対する考え方 - Qiita

    この記事は Go Advent Calendar 2013 の 9 日目の投稿です。 今回は、 Go の testing というパッケージの使い方を解説しようと思ったのですが、 それだとつまらなすぎるので、合わせて Go が test というか assert についてどういうスタンスをとっているかを書いてみます。 Go でテスト さて、「テストのないコードはレガシーコード」などと言われて久しく、様々な言語が test (主に Unittest) について言語レベルでサポートしたり、デファクトなライブラリが確立したりといった状況が、今日では至って普通のこととなっています。 そんな言語や環境で、息をするようにテストを書いてきたみなさんが、はじめて Go でコードを書く時に見るべきは testing パッケージです。 http://golang.org/pkg/testing/ 命名規則 では、

    Go の Test に対する考え方 - Qiita
  • Goで外部リクエストが関わる処理をテストする - Qiita

    外部リクエストを含める処理の場合のテストの書き方 いわゆるリクエストのモックの作り方について。 例えばfetch()という外部のURLをGETで取得する関数があったとする。 package main import ( "fmt" "io/ioutil" "log" "net/http" ) func fetch(url string) []byte { res, err := http.Get(url) fmt.Println(url) if err != nil { log.Fatal(err) } defer res.Body.Close() body, err := ioutil.ReadAll(res.Body) if err != nil { log.Fatal(err) } return body } func main() { clientId := "<client id>

    Goで外部リクエストが関わる処理をテストする - Qiita
  • 1