LoginSignup
2
4

More than 5 years have passed since last update.

良いテストとは? 『リーダブルコード』-テストと読みやすさ-メモ

Last updated at Posted at 2018-10-12

テストを書く機会が多くなったので、『リーダブルコード』の「テストと読みやすさ」という章を読んだメモです。

リーダブルコード p.179~

テストを読みやすくて保守しやすいものにする

鍵となる考え

他のプログラマが安心してテストの追加や変更ができるように、テストコードを読みやすくする

だめなテストで起きること

  • 本物のコードを修正するのを恐れる
  • 新しいコードを書いたときにテストを追加しなくなる

設計原則

「大切ではない詳細はユーザから隠し、大切な詳細は目立つようにする」べき

テストの最適な入力値を選択する

鍵となる考え

コードを完全にテストする最も単純な入力値の組み合わせを選択しなければならない。

たとえば、

テストには最もキレイで単純な値を選ぶ。
マイナス数値を削除する機能のテストならば、-9994.2ではなく-1でよい。極大な数値をテストしたいのなら、-1e100のような簡潔な値にしたほうがいい

1つの機能に複数のテスト

コードを検証する「完ぺき」な入力値を1つ作るのではなく、小さなテストを複数作るほうが、簡単で、効果的で、読みやすい。

テストのトップレベルはできるだけ簡潔にする。入出力のテストはコード1行で記述できるといい。

CheckScoreBeforeAfter(input,expected)

テストの機能に名前をつける

テスト関数に説明的な名前をつけて、何をテストしているのかを明らかにする。Test1()ではなく、Test_<関数名>_<状況>のような名前にする。

2
4
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
2
4