意味がないテストをするな。VERSION==1.0.0 [無断転載禁止]©2ch.net (87レス)
上下前次1-新
抽出解除 レス栞
10(1): 2017/09/10(日)03:10 ID:CfAD8p5O(2/6) AAS
>>6
バリデーションのテストは
「ある項目に数字以外を入れたらエラーになる」という
仕様を満たしているかどうかのテストであって正規表現のテストをするわけではない
実装が正規表現である必要もない
16(1): 2017/09/10(日)10:56 ID:G4ZVCKWZ(4/12) AAS
>>10
> バリデーションのテストは
> 「ある項目に数字以外を入れたらエラーになる」という
> 仕様を満たしているかどうかのテストであって正規表現のテストをするわけではない
> 実装が正規表現である必要もない
はい、そのとおりですね。
処理をしているのが正規表現であるかそれ以外のコードであるかは関係ない。
だからここでやるべきことはnumberOnlyという関数を作ること
そしてそのnumberOnlyが仕様を満たしているかどうか? のテストです。
これは入念にテストする必要があるでしょう。
もしてテストしなければいけない(?)項目はもう一つ残っていますね?
numberOnlyのバリデーションが設定されている項目はpriceだけではなく
sizeやcountなどもいくつもあるでしょう。
それらの数値項目が10個あったとき、10個全てに
numberOnlyでやったのと同じ入念なテストは必要ないのですよ。
まあやるとしたとしても「ある項目のバリデーションがnumberOnlyであること」
ぐらいでしょうが、これもまさに項目のバリデーションにnumberOnlyと
書いたんだから当然numberOnlyに決まってるだろという
データの二重管理にすぎない問題になるわけですよ。
自分で定義したものが(書いたものが)、自分で定義した(書いた)とおりに
なっているかなんて意味がないテストです
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.617s*