意味がないテストをするな。VERSION==1.0.0
- 1 :デフォルトの名無しさん:2017/09/09(土) 15:31:54.82 ID:al+wrNfN.net
- app.version = '1.0.0'
テストコード
expect(app.version).to.be '1.0.0'
バージョン番号1.1.0に変更すっぞ!
app.version = '1.1.0' に修正
expect(app.version).to.be '1.1.0' に修正
これただのデータの重複、たんなる二重管理ですから\(^o^)/
メンテナンス工数が二倍になるだけ
誰もそんなことやらねーよって思うかもしれないが
関数だったらやってしまうんだよね。
カバレッジがー(笑)
function getVersion() { return '1.1.0' }
expect(app.getVersion()).to.be '1.1.0'
他にも色々と、意味がないテストがある
意味がないテストしてるやつが多い。
関数の実行結果をテストコードにコピペしてテスト作るやつとかな
- 35 :デフォルトの名無しさん:2017/09/10(日) 21:55:28.82 ID:ZKxYrqVl.net
- もう仕事の手順が間違ってるわけで
- 36 :デフォルトの名無しさん:2017/09/13(水) 09:26:04.89 ID:SbfCQQCY.net
- TDDでok
- 37 :デフォルトの名無しさん:2017/09/14(木) 12:00:39.09 ID:yiOvFiYP.net
- >>31
手作業でテストするならそうだろうけど自動テストが当たり前の時代にその考え方は古すぎる
- 38 :デフォルトの名無しさん:2017/09/14(木) 12:41:22.58 ID:NPMvj+H/.net
- >>31
いつの時代の話だよ
- 39 :デフォルトの名無しさん:2017/09/14(木) 14:20:12.84 ID:+X9KJHHB.net
- 時代の問題か?
設計書通りに動くこと
仕様書通りに動くこと
が時代遅れとか
掲示板のレベル下がってるな
プログラム組むのやめて田舎帰れよ
役に立たねぇ
- 40 :デフォルトの名無しさん:2017/09/14(木) 14:28:59.77 ID:1Cd2i0pl.net
- そうじゃないんだよなあ。読解力ガイジかよ
- 41 :デフォルトの名無しさん:2017/09/14(木) 20:37:17.99 ID:+X9KJHHB.net
- >>40
ゴミクズうざ
- 42 :デフォルトの名無しさん:2017/09/14(木) 21:02:50.08 ID:XVFgKdZv.net
- >>41
40とは別人だが君の読解力のほうに問題があると思うぞ
もう一度読みなおしてみようか
- 43 :デフォルトの名無しさん:2017/09/14(木) 21:44:39.62 ID:+X9KJHHB.net
- >>42
は?死んで
- 44 :デフォルトの名無しさん:2017/09/15(金) 07:21:59.46 ID:3dLbew77.net
- 作成者が自分の望んだ観点しかテスト出来ないってこういうことなんだろうな
- 45 :デフォルトの名無しさん:2017/09/20(水) 08:59:37.11 ID:G8o9DQ5K.net
- >>39
作る前から完璧な設計・仕様が確定してる前提ってのがいつの時代の話だよってことじゃね?
- 46 :デフォルトの名無しさん:2017/09/20(水) 09:01:51.05 ID:dboA6E8g.net
- >>45
UnitTestなんて書いたことないんだろ
- 47 :デフォルトの名無しさん:2017/09/20(水) 10:14:42.96 ID:59PsJZUl.net
- >>45
作ってから何が足りないか考えさせればいいだろ
請負だろ?
途中の成果物なんて見せる必要ないで
- 48 :デフォルトの名無しさん:2017/09/27(水) 23:02:52.48 ID:YYHqfTn1.net
- >>1 が言ってるテストの書き方で問題なのは中の実装を見てテストを書こうとしてるところ。そんな書き方してたら意味のあるテストなんて殆ど書けない。
大事なのはテスト対象の振る舞いを決め、その通りに動作するかどうかの観点でテストを書くこと。
例えば固定のバージョンを返すメソッドでもそれが文字列なのであればフォーマットが決まってるはず。
フォーマットが決まってなければバージョンを確認して動作を変えるようなものも作れないからね。で、フォーマットが決まってるならそのフォーマット通りの文字列を返しているかどうかのテストが書ける。
逆に言えばそのバージョンが人間が異なるかどうかの確認する為の物なだけで、プログラム上から確認するためのものではないからフォーマットなんて決まってないというのであればそんなものにテストなんて書かなくていい
- 49 :デフォルトの名無しさん:2017/09/28(木) 07:27:38.63 ID:Q17St4K8.net
- 要はその関数の仕様が満たされているか確認できているかどうかということだろ
仕様が固定文字列を返すことなら固定文字列との比較が必要だし、特定フォーマットの文字列ならそのフォーマットか検査することが必要
- 50 :デフォルトの名無しさん:2017/09/28(木) 17:12:47.59 ID:5YSrcQS5.net
- >>48
> >>1 が言ってるテストの書き方で問題なのは中の実装を見てテストを書こうとしてるところ。そんな書き方してたら意味のあるテストなんて殆ど書けない。
それ、君の思い込みだから
- 51 :デフォルトの名無しさん:2017/09/28(木) 19:37:57.44 ID:NUvabez2.net
- >>50
それ、君の思い込みだから
- 52 :デフォルトの名無しさん:2017/09/28(木) 20:05:09.84 ID:Up+E61c/.net
- テストコード書けなくてバカにでもされたんだろ
- 53 :デフォルトの名無しさん:2017/09/29(金) 10:21:20.15 ID:w8XxzvHf.net
- >>51
ほう、カバレッジという概念に全く意味が無いとでも?
- 54 :デフォルトの名無しさん:2017/09/29(金) 12:01:00.21 ID:d1b5e1Xh.net
- 変更したらテスト方法変えてとかコメント入れとくんだろw
- 55 :デフォルトの名無しさん:2017/09/29(金) 12:31:48.88 ID:gRPc6RlQ.net
- >>48
ブラックボックステストとホワイトボックステストというのがあってだな
- 56 :デフォルトの名無しさん:2017/09/29(金) 13:38:50.44 ID:FpNtbfv9.net
- >>53
カバレッジはテスト対象の振る舞いの定義が足りていないかの確認の為に意味がある。
カバレッジ上げるためだけに入れられたバリデーションの無いテストコードに意味はない
- 57 :デフォルトの名無しさん:2017/09/29(金) 13:56:55.95 ID:w8XxzvHf.net
- >>56
> カバレッジ上げるためだけに入れられたバリデーションの無いテストコードに意味はない
「カバレッジ上げるためだけに入れられたバリデーションの無いテストコード」ではないテストコードには
意味があるだろ
論点がよくわかってないのか?
> 問題なのは中の実装を見てテストを書こうとしてるところ。そんな書き方してたら意味のあるテストなんて殆ど書けない。
が論点だ
- 58 :デフォルトの名無しさん:2017/09/29(金) 14:15:24.76 ID:w8XxzvHf.net
- てか、カバレッジがなんだかわかってないのかな?
>>56
> カバレッジはテスト対象の振る舞いの定義が足りていないかの確認の為に意味がある。
「振る舞いの定義が足りていない」コードに対して、カバレッジ100%のテストをしたとしても、「振る舞いの定義が足りていない」ことには変わりない。
つまり、カバレッジはテスト対象の振る舞いの定義が足りていないかの確認の為には使えない。
- 59 :デフォルトの名無しさん:2017/09/29(金) 15:12:48.25 ID:FpNtbfv9.net
- >>58
振る舞いの定義の為にテストを書いていれば自動的にカバレッジが振る舞いの定義が足りていない、もしくは無意味なコードのどちらかに絞られる。
前者であれば振る舞いを定義し、それのテストコードを書く。後者であればその無意味なコードを削除する。
”中の実装を見てテストを書く”なんて事をしていたら後者でも無意味なコードに対してテストコードを書きがち。だから意味のあるテストは殆ど書けないと言ってる。
- 60 :デフォルトの名無しさん:2017/09/29(金) 15:20:46.81 ID:FpNtbfv9.net
- 前者でも振る舞いを考えずに単純に内部実装のテストコードを書こうとするから無意味なテストコードになっている。 >>1 がいい例
- 61 :デフォルトの名無しさん:2017/09/29(金) 15:42:23.19 ID:w8XxzvHf.net
- 「無意味なコードを書く」ことがあるような人とは会話できませんわ
- 62 :デフォルトの名無しさん:2017/09/29(金) 16:00:17.56 ID:FpNtbfv9.net
- >>61
そうだね。修正によってあるコード片が無意味なコードになったことすら無いような経験不足な相手に説明しても無駄だあね。
- 63 :デフォルトの名無しさん:2017/09/29(金) 16:31:00.49 ID:w8XxzvHf.net
- >>62
そういう場合は、無意味になる前にそのコードに対するテストが存在していたはずで、「意味が無くなったから削除する」なら、プロダクトコードもテストコードも削除する
そもそもお前の主張だと、無意味なコードに対するテストは存在しないんだろ?
そういう話はどうでもいい
全部が意味があるプロダクトコードに対して、その実装内容に即したテストを書くことに意味があるかどうかだ
そういう場合でも、
> ”中の実装を見てテストを書く”なんて事をしていたら後者でも無意味なコードに対してテストコードを書きがち。だから意味のあるテストは殆ど書けないと言ってる。
ってことなんだろ?
それにま全く同意できない
- 64 :デフォルトの名無しさん:2017/09/29(金) 16:32:07.20 ID:w8XxzvHf.net
- ホワイトボックステストはしないんですかね
- 65 :デフォルトの名無しさん:2017/09/29(金) 16:35:35.81 ID:w8XxzvHf.net
- おそらくTDDのようなプロセスを想定した主張なんだろうが、TDDでも実装内容に応じて三角測量のためにテストは追加する
- 66 :デフォルトの名無しさん:2017/09/29(金) 16:36:42.08 ID:w8XxzvHf.net
- どのようなテスト手法でも、意味の無いテストは意味が無い、ただそれだけのことだ
- 67 :デフォルトの名無しさん:2017/09/29(金) 23:50:09.53 ID:7BTzW/1N.net
- トートロジーでドヤ顔
- 68 :デフォルトの名無しさん:2017/09/30(土) 00:55:55.38 ID:DvjAVMUQ.net
- >>1
app.versionの定義が1.0.0という文字列を返すことならそれで構わない
「数字.数字.数字」というフォーマットの文字列を返すのが定義ならそれを検証しなければならない
どう定義されているのかに完全に依存するので>>1の内容だけでは何とも言えない
- 69 :デフォルトの名無しさん:2017/10/01(日) 08:45:27.64 ID:QF3dVHO1.net
- >>1
それでもそれやりゃ金もらえるんだから
文句言わずにやれカス
- 70 :デフォルトの名無しさん:2017/10/02(月) 09:50:26.11 ID:6bX/hSXR.net
- >>69
こんなんだから日本のソフトウェア産業は糞
- 71 :デフォルトの名無しさん:2018/01/17(水) 19:51:14.43 ID:BNHtUGBq.net
- DBのテストの場合:
(1) テストデータを乱数で生成
(2) 順列・組み合わせを応用して機械的にデータを作って食わせる
- 72 :デフォルトの名無しさん:2018/02/12(月) 13:35:07.77 ID:BUzgeysp.net
- 意味が無いことを確認するためにテストしてみよう(提案
- 73 :デフォルトの名無しさん:2018/02/16(金) 06:00:50.23 ID:W1XJdyx1.net
- ☆ 日本の、改憲を行いましょう。現在、衆議員と参議院の
両院で、改憲議員が3分の2を超えております。
『憲法改正国民投票法』、でググってみてください。国会の発議は
すでに可能です。平和は勝ち取るものです。お願い致します。☆☆
- 74 :デフォルトの名無しさん:2018/05/23(水) 20:44:34.37 ID:Au5e7VGg.net
- 僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
2AQDM
- 75 :デフォルトの名無しさん:2018/07/05(木) 01:08:33.06 ID:RfoszcD2.net
- REB
- 76 :デフォルトの名無しさん:2020/01/29(水) 17:14:35 ID:MZiWsP4Y.net
- 新人クン「判りやすくするためにコメント付けただけだから意味の無いテストなんて不要です」
#!/usr/bin/python
↓
###########
#!!○○処理!!
###########
#!/usr/bin/python
- 77 :デフォルトの名無しさん:2022/03/24(木) 00:50:39.01 ID:SMpQCEvG.net
- 【画像】俺くん、字が上手すぎるwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
https://mi.5ch.net/test/read.cgi/news4vip/1648047195/
57 以下、5ちゃんねるからVIPがお送りします[] 2022/03/24(木) 00:43:13.864 ID:6YrwkZDPd
http://o.5ch.net/1xk4i.png
- 78 :デフォルトの名無しさん:2022/03/24(木) 00:51:50.74 ID:MV6zBxE3.net
- >>77
意味がないレスをするな
- 79 :デフォルトの名無しさん:2022/04/25(月) 18:44:01.58 ID:IyR8mDVM0.net
- アフィスレ
- 80 :デフォルトの名無しさん:2022/04/25(月) 18:44:38.40 ID:IyR8mDVMM.net
- てす
- 81 :デフォルトの名無しさん:2022/04/25(月) 18:45:04.01 ID:IyR8mDVMM.net
- てすてす
- 82 :デフォルトの名無しさん:2022/04/25(月) 18:46:13.33 ID:IyR8mDVM.net
- てすてすてすてすてす
- 83 :デフォルトの名無しさん:2023/12/06(水) 11:49:27.31 ID:oM0gjrfW.net
- 意味が無いテストをしていたのか
それともテストすらしていなかったのか
全銀システム障害「詳細設計書見落とし」でオーバーフローの痛恨、再発防止なるか
https://xtech.nikkei.com/atcl/nxt/column/18/00001/08680/
- 84 :デフォルトの名無しさん:2024/03/19(火) 09:58:18.84 ID:rlbm+a6A.net
- CPUの64ビット化は単にレジスターが2倍になるだけじゃなくて、コード最適化の際にパディングが挿入されてて
予想以上にメモリ食う時があるからな。
特に移行サーバーはハードスペックもテストもコストが低く見積もられがち。
29 KB
新着レスの表示
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★