コード日進月歩

しんくうの技術的な小話、メモ、つれづれ、など

コードレビューにおいてテストコードを添えるという手法

ruby-jpで知見を得たのでメモっておく

コードレビューでの伝え方

コードレビューの話が出たのでこんな疑問を投げかけた

レビューで直して欲しいときはコードスニペットで具体例添えるんですが、具体すぎると具体例をコピペして終わっちゃうし、かといって抽象化しすぎるとイマイチ伝わらないし、加減が難しい。。

頂いたレス

  • コピペでは動かないようなスニペットにすればいいのではないか
  • ペアプロすればいいのでないか
  • (実装の考慮漏れであれば)「こういう場合が考慮できてないと思うので修正して」って感じでテストコードのスニペットだけ書いて、プロダクトコード側の実装をレビュイにやってもらう

テストコードを添えるという考え方

大体コードスニペットを添える場合は

  • 実装がイマイチ(パフォーマンス、責務、etc..)な感じなので、よりよいやり方を提案する
  • 考慮が漏れているケースがあるので、それを例示する
  • 自然言語だとミスリードしそうな可能性があるので、コードで伝える

みたいなケースがあるんですが、確かに「直してほしいことを実現する」というテストコードは自身で実装を考えるきっかけにもなるし、押し付けがましくもなく、コピペにもならないいい発想だなと思いました。

関連リンク