意味がないテストをするな。VERSION==1.0.0 [無断転載禁止]©2ch.net (87レス)
上下前次1-新
37: 2017/09/14(木)12:00 ID:yiOvFiYP(1) AAS
>>31
手作業でテストするならそうだろうけど自動テストが当たり前の時代にその考え方は古すぎる
38: 2017/09/14(木)12:41 ID:NPMvj+H/(1) AAS
>>31
いつの時代の話だよ
39(1): 2017/09/14(木)14:20 ID:+X9KJHHB(1/3) AAS
時代の問題か?
設計書通りに動くこと
仕様書通りに動くこと
が時代遅れとか
掲示板のレベル下がってるな
プログラム組むのやめて田舎帰れよ
役に立たねぇ
40(1): 2017/09/14(木)14:28 ID:1Cd2i0pl(1) AAS
そうじゃないんだよなあ。読解力ガイジかよ
41(1): 2017/09/14(木)20:37 ID:+X9KJHHB(2/3) AAS
>>40
ゴミクズうざ
42(1): 2017/09/14(木)21:02 ID:XVFgKdZv(1) AAS
>>41
40とは別人だが君の読解力のほうに問題があると思うぞ
もう一度読みなおしてみようか
43: 2017/09/14(木)21:44 ID:+X9KJHHB(3/3) AAS
>>42
は?死んで
44: 2017/09/15(金)07:21 ID:3dLbew77(1) AAS
作成者が自分の望んだ観点しかテスト出来ないってこういうことなんだろうな
45(2): 2017/09/20(水)08:59 ID:G8o9DQ5K(1) AAS
>>39
作る前から完璧な設計・仕様が確定してる前提ってのがいつの時代の話だよってことじゃね?
46: 2017/09/20(水)09:01 ID:dboA6E8g(1) AAS
>>45
UnitTestなんて書いたことないんだろ
47: 2017/09/20(水)10:14 ID:59PsJZUl(1) AAS
>>45
作ってから何が足りないか考えさせればいいだろ
請負だろ?
途中の成果物なんて見せる必要ないで
48(2): 2017/09/27(水)23:02 ID:YYHqfTn1(1) AAS
>>1 が言ってるテストの書き方で問題なのは中の実装を見てテストを書こうとしてるところ。そんな書き方してたら意味のあるテストなんて殆ど書けない。
大事なのはテスト対象の振る舞いを決め、その通りに動作するかどうかの観点でテストを書くこと。
例えば固定のバージョンを返すメソッドでもそれが文字列なのであればフォーマットが決まってるはず。
フォーマットが決まってなければバージョンを確認して動作を変えるようなものも作れないからね。で、フォーマットが決まってるならそのフォーマット通りの文字列を返しているかどうかのテストが書ける。
逆に言えばそのバージョンが人間が異なるかどうかの確認する為の物なだけで、プログラム上から確認するためのものではないからフォーマットなんて決まってないというのであればそんなものにテストなんて書かなくていい
49: 2017/09/28(木)07:27 ID:Q17St4K8(1) AAS
要はその関数の仕様が満たされているか確認できているかどうかということだろ
仕様が固定文字列を返すことなら固定文字列との比較が必要だし、特定フォーマットの文字列ならそのフォーマットか検査することが必要
50(1): 2017/09/28(木)17:12 ID:5YSrcQS5(1) AAS
>>48
> >>1 が言ってるテストの書き方で問題なのは中の実装を見てテストを書こうとしてるところ。そんな書き方してたら意味のあるテストなんて殆ど書けない。
それ、君の思い込みだから
51(1): 2017/09/28(木)19:37 ID:NUvabez2(1) AAS
>>50
それ、君の思い込みだから
52: 2017/09/28(木)20:05 ID:Up+E61c/(1) AAS
テストコード書けなくてバカにでもされたんだろ
53(1): 2017/09/29(金)10:21 ID:w8XxzvHf(1/8) AAS
>>51
ほう、カバレッジという概念に全く意味が無いとでも?
54: 2017/09/29(金)12:01 ID:d1b5e1Xh(1) AAS
変更したらテスト方法変えてとかコメント入れとくんだろw
55: 2017/09/29(金)12:31 ID:gRPc6RlQ(1) AAS
>>48
ブラックボックステストとホワイトボックステストというのがあってだな
56(2): 2017/09/29(金)13:38 ID:FpNtbfv9(1/4) AAS
>>53
カバレッジはテスト対象の振る舞いの定義が足りていないかの確認の為に意味がある。
カバレッジ上げるためだけに入れられたバリデーションの無いテストコードに意味はない
57: 2017/09/29(金)13:56 ID:w8XxzvHf(2/8) AAS
>>56
> カバレッジ上げるためだけに入れられたバリデーションの無いテストコードに意味はない
「カバレッジ上げるためだけに入れられたバリデーションの無いテストコード」ではないテストコードには
意味があるだろ
論点がよくわかってないのか?
> 問題なのは中の実装を見てテストを書こうとしてるところ。そんな書き方してたら意味のあるテストなんて殆ど書けない。
が論点だ
58(1): 2017/09/29(金)14:15 ID:w8XxzvHf(3/8) AAS
てか、カバレッジがなんだかわかってないのかな?
>>56
> カバレッジはテスト対象の振る舞いの定義が足りていないかの確認の為に意味がある。
「振る舞いの定義が足りていない」コードに対して、カバレッジ100%のテストをしたとしても、「振る舞いの定義が足りていない」ことには変わりない。
つまり、カバレッジはテスト対象の振る舞いの定義が足りていないかの確認の為には使えない。
59: 2017/09/29(金)15:12 ID:FpNtbfv9(2/4) AAS
>>58
振る舞いの定義の為にテストを書いていれば自動的にカバレッジが振る舞いの定義が足りていない、もしくは無意味なコードのどちらかに絞られる。
前者であれば振る舞いを定義し、それのテストコードを書く。後者であればその無意味なコードを削除する。
”中の実装を見てテストを書く”なんて事をしていたら後者でも無意味なコードに対してテストコードを書きがち。だから意味のあるテストは殆ど書けないと言ってる。
60: 2017/09/29(金)15:20 ID:FpNtbfv9(3/4) AAS
前者でも振る舞いを考えずに単純に内部実装のテストコードを書こうとするから無意味なテストコードになっている。 >>1 がいい例
61(1): 2017/09/29(金)15:42 ID:w8XxzvHf(4/8) AAS
「無意味なコードを書く」ことがあるような人とは会話できませんわ
62(1): 2017/09/29(金)16:00 ID:FpNtbfv9(4/4) AAS
>>61
そうだね。修正によってあるコード片が無意味なコードになったことすら無いような経験不足な相手に説明しても無駄だあね。
63: 2017/09/29(金)16:31 ID:w8XxzvHf(5/8) AAS
>>62
そういう場合は、無意味になる前にそのコードに対するテストが存在していたはずで、「意味が無くなったから削除する」なら、プロダクトコードもテストコードも削除する
そもそもお前の主張だと、無意味なコードに対するテストは存在しないんだろ?
そういう話はどうでもいい
全部が意味があるプロダクトコードに対して、その実装内容に即したテストを書くことに意味があるかどうかだ
そういう場合でも、
> ”中の実装を見てテストを書く”なんて事をしていたら後者でも無意味なコードに対してテストコードを書きがち。だから意味のあるテストは殆ど書けないと言ってる。
ってことなんだろ?
それにま全く同意できない
64: 2017/09/29(金)16:32 ID:w8XxzvHf(6/8) AAS
ホワイトボックステストはしないんですかね
65: 2017/09/29(金)16:35 ID:w8XxzvHf(7/8) AAS
おそらくTDDのようなプロセスを想定した主張なんだろうが、TDDでも実装内容に応じて三角測量のためにテストは追加する
66: 2017/09/29(金)16:36 ID:w8XxzvHf(8/8) AAS
どのようなテスト手法でも、意味の無いテストは意味が無い、ただそれだけのことだ
上下前次1-新書関写板覧索設栞歴
あと 21 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.026s