読者です 読者をやめる 読者になる 読者になる

パルカワ2

PerlとRubyとイチャラブ

不必要なテスト

テストするべき項目、テストするとき考えると思う。
一つのメソッドに対して、テストするべき項目が多すぎるとそのメソッドがやたらでかいとか、不必要な部分までテストしてるとかだと思う。
メソッドがやたらでかい場合は、切り分けるし、不必要なテストは、消すべきだと思う。

あるパラメータからデータを作って、さらにそのデータを使って計算するみたいなの全部まるっと一つにまとめるとかよくされる。何をしているかで分類すると2つやってることがある。メソッドは、一つのことをやればいいと思う。だから、あるパラメータからデータを作るメソッド、データを受け取って計算するメソッドみたいな感じで分けるのが良いと思っている。

sub hoge {
    $self->fuga()
    # hoge処理
}

不必要なテストは、こういうhogeメソッドがあったとして、fugaのテストまで、hogeのテストでやってしまうみたいなの見かける。2重にテストする必要ないと思う。ひどい場合、fugaのテストがないとかもある。ちゃんと分けるべきだと思っている。

追記:
具体的には、自分の場合テストするべき項目が4, 5個くらいあると大丈夫かな?って見直す。