意味がないテストをするな。VERSION==1.0.0 [無断転載禁止]©2ch.net (87レス)
意味がないテストをするな。VERSION==1.0.0 [無断転載禁止]©2ch.net http://mevius.5ch.net/test/read.cgi/tech/1504938714/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
9: デフォルトの名無しさん [sage] 2017/09/10(日) 02:59:20.70 ID:CfAD8p5O >>1 >function getVersion() { return '1.1.0' } >expect(app.getVersion()).to.be '1.1.0' バージョンアップのたびにテストコードを変更してメンテするのは微妙すぎるだろ そうじゃなく、そのバージョン用のテストスイートを書いてるのであればその種のテストにも十分意味がある (例えば1.0系のテストと1.1系のテストを並列でメンテしてる場合) 今は単純文字列を返す実装だから無意味に感じるのだろうが リファクタして設定ファイルからバージョンを取得するようにしたり DBからバージョンを取得するようになったりしても 仕様を満たしてるかどうかを確認できる テストが不要なくらい明白な実装かどうかを 毎回判断しながらテストケースを管理することのほうが意味がない http://mevius.5ch.net/test/read.cgi/tech/1504938714/9
12: デフォルトの名無しさん [sage] 2017/09/10(日) 08:18:10.38 ID:G4ZVCKWZ >>9 > 今は単純文字列を返す実装だから無意味に感じるのだろうが > リファクタして設定ファイルからバージョンを取得するようにしたり > DBからバージョンを取得するようになったりしても > 仕様を満たしてるかどうかを確認できる 重要なのはなにをテストしているのかをきっちり理解することですよ バージョン番号が書いてあるところがファイルでも変数でも関係ないですが、 1.0.0と書いたものが、1.0.0であることをテストしたいのか? それとも、バージョン番号が正しく取得できることをテストしたいのか? 1.0.0と書いたものが1.0.0であることとかアホらしいですよねw そう書いたんだから、そう取得できるのは当たり前 これは単なるデータの二重管理に過ぎません。 重要なのは、バージョン番号が正しく取得できることなのですよ。 具体的なデータ(バージョン番号)はダミーデータで十分です。 まずテストコードでそのダミーデータ(例えば0.0.1)を 変数なり、ファイルなり、DBなりに格納します。 そしてそれがgetVersion()で正しく取得できることテストするのです。 そうすりゃ、getVersion() == 1.0.0 あ゛〜、バージョンが上がっちまったー、VERSIONファイルと テストコードの両方を1.1.0に修正しなきゃーなんて アホなメンテは必要なくなるなるわけです。 http://mevius.5ch.net/test/read.cgi/tech/1504938714/12
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.659s*