LoginSignup
1
1

More than 5 years have passed since last update.

nock 小ネタ

Posted at

nock は Node.js HTTPサーバのモックを作るツール

リクエストを console.log する

let scope = nock(url)
  .post('/api/v1', expectBody)
  .reply(200)

とか書いているところを

let scope = nock(url)
  .post('/api/v1')  // expectBody は取り除く
  .reply(function(url, reqBody) {
    console.log(`request: ${reqBody}`)
    return 200
  })

のように変更する。

正しいはずの expectBody がマッチせず、body を確認したいときに便利。

リクエストを外に出さない

nock.disableNetConnect();

テストコードの頭のあたりにこれを書いておく。

url を typo したりでフックに失敗すると、実際にリクエストが外に出ていく。
つまり本番環境の URL が書いてあったりすると、意図しないデータが登録されてしまうので、そういった事故を防ぐことができる。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1