クソコードとは何か

■ このスレッドは過去ログ倉庫に格納されています
2021/01/30(土) 17:33:05.78ID:BjNTZWUI
このスレはクソコードとは何かを考えるスレです。

・親クラスが子クラスに依存する処理を持つコード
例...社員クラスを継承した正社員クラスと派遣社員クラスがあり、社員クラスが正社員クラスの知識を持つ状況

・staticにするべきではないモデルにまでstaticにする人
例...社員クラスのメソッドを全てstaticにしたり、社員クラスにシングルトンパターンに相応するものを適用する人

等、クソコードを見た時に「あっ、これクソコードだ」って認識する根拠を挙げていきましょう。
2021/02/16(火) 22:09:23.42ID:dPD3RJZH
>>284
確認も何も
本当に避けられるかどうかがまずどうでもいい
もっと気楽にもっと率直に
「こういう糞を俺はこう避ける」の生の意見を聞きたい
2021/02/16(火) 22:16:43.61ID:ZcpmZlC/
>>284
それを聞いてる

「手動テストすればクソコードを避けられる」という意見があったとして
それが本当にクソコードを避けられるかどうか
どうやって確認するの?
2021/02/17(水) 02:14:29.51ID:9AWFfoq+
クソコード避けたいなら、まずクソなプロジェクトを避けることだな
2021/02/17(水) 02:46:54.37ID:fzT3JoWH
>>285
発想がすでにクソコード
2021/02/17(水) 07:57:46.74ID:cgz/Ol0S
元は>>228の発言なんだろうけど、もう触れるのはやめようぜ
俺ももっと建設的な意見が聞きたいよ
2021/02/17(水) 08:34:48.76ID:ty0uudwM
結局手動テストで、正しくテストを行ったことを
担保する方法は出ないで終わりか
結果のスクショだけじゃ役に立たないからね
2021/02/17(水) 12:04:03.72ID:KH04dI9l
コードがクソでもプログラマーがクソじゃなければ簡単に浄化できる

クソコードを避けようとするのは浄化スキルを持たないクソプログラマー
2021/02/17(水) 12:11:35.28ID:JcWwc4WJ
浄化が何を示すのかよくわからんけど単体テストコード無しでリファクタリングする勇気は俺にはないわ
2021/02/17(水) 12:31:42.99ID:H55Rd51D
俺もテストコードが無い上、手遅れなソースは直せる自身がないや
ほぼ作り直しになる未来しか見えない
テストコードを作れば済む話なら直せるけど、手遅れコードは無理
2021/02/17(水) 12:50:38.83ID:FZd5objq
具体性皆無
どうやって浄化(リファクタリング?)するのだか
たったの2行から嫌な予感しかしないけど、一応聞いてやろう
2021/02/17(水) 13:00:59.13ID:pFFqlpSR
テストコードが無いなら書けばいいじゃん
クソコードを放置して新たなクソを付け足すのもクソプログラマーだな
2021/02/17(水) 13:50:01.10ID:FZd5objq
>>295
クソコード呼ばわりするレベルに至る時点で、テストコードを追加して直せばいいじゃんで済むレベルじゃないと思うのだが

まぁ、俺の想像するクソコードと貴方の想像するクソコードが乖離している可能性はあるけど
297デフォルトの名無しさん
垢版 |
2021/02/17(水) 14:04:39.81ID:DzAxBoaP
テストコードって学校で習わなかったなぁ
2021/02/17(水) 14:15:56.78ID:bkC92bnI
頭の悪いマウント合戦やってるクソスレ上げんなカス
2021/02/17(水) 14:24:26.00ID:8PenPzn3
晒し上げ
2021/02/17(水) 14:27:57.95ID:ty0uudwM
>>295
テストコードがないのに、どうやって正しいテストがわかるのかね?
テストが本当に正しいという担保はどうやって取るのかずっと聞いてる
2021/02/17(水) 14:35:24.50ID:7XrGtYbS
>>300
仕様があればテストコードがなくても何が正しいかわかるよね?

仕様がないなら仕様を作ればいいよね?
何が正しいかを決めればいいだけ

できない言い訳ばかりしてクソにクソを積み重ねる君たちがクソコードの現況だから
2021/02/17(水) 14:37:56.30ID:ty0uudwM
>>301
> 仕様があればテストコードがなくても何が正しいかわかるよね?

その仕様が正しいという担保は?
仕様が間違ってるなんてよくある話
2021/02/17(水) 14:47:15.95ID:csyh4HrV
はいはい、この話はやめやめ
頼むから【隔離】文字を入れた隔離スレで議論してくれ
2021/02/17(水) 15:11:11.02ID:4I2sE0QP
>>302
それは仕様書が間違ってるんであって仕様が間違ってるのとは違う

仕様書が間違ってると判断できる術があるなら何が正しいかわかるということ

結局テストと同じ話なんだけどあれこれ言い訳してクソを放置してるだけだよね
2021/02/17(水) 18:21:56.56ID:k81iZNBk
継続的イ...継続的な品質維持を破壊するようなコードを列挙していこうぜ
スレの趣旨的にはアンチパターンの研究が本来の目的だろうし

「構造が理解できないコード」とか
「責務を見失ったクラス」とか
「コピペしたような共通のコードが複数箇所あって、一部のソースを変更したら114,519箇所のコード書き直しが要求されるコード」とか
2021/02/17(水) 18:27:10.12ID:ar54zOTy
TDD知らんの?
2021/02/17(水) 18:30:50.13ID:k81iZNBk
>>306
知ってるけど流れ察しろ
308デフォルトの名無しさん
垢版 |
2021/02/17(水) 18:32:30.85ID:8Df3qLX7
馬鹿が文章を書くとこうなりますの見本スレ
309デフォルトの名無しさん
垢版 |
2021/02/17(水) 18:44:03.73ID:ltamn3iy
クソコード:大概が自己満足のオナニーに起因する
自動テスト:出来ているやつはホトンド居ない、なぜなら自動テストで致命的な問題が
      出てこないで後から発見されるから、セキュリティ・ホールも右に同じ
      大概が自己満足のオナニー

だが自動テストは必要悪である。テスト原理主義者はカバレッジが100%で無ければ教義に反する異端者として
処分され、変数の代入さえテストを要求するが、致命的な問題が後から発見された場合にはテストすら破壊する
破壊的なリファクタリングを必要とし、テストコードの修正と二重苦の責めを負う
2021/02/17(水) 18:50:55.02ID:dlextU55
>>305
視野が狭すぎてちょっと引く・・・

君みたいなプログラマーが継続的な品質維持を破壊する1番の原因
2021/02/17(水) 18:55:30.33ID:UmDM7l2a
>>310が空気読んでなくて引く
どう考えても継続的イとか言いかけているあたりがで、荒らしを相手にすんなという意味なのにそれを解説しないと伝わらないことに引くわ

あっ言っちゃった
2021/02/17(水) 18:59:25.09ID:JcWwc4WJ
>>295
テストコードがない時点でろくな仕様書がない可能性が高いと思う
コードからテストコードを作るのはめっちゃ大変だし
2021/02/17(水) 19:10:33.57ID:UlO/vFMl
継続的淫夢ローション
2021/02/17(水) 19:19:20.02ID:DzAxBoaP
>>298
1番馬鹿なのはお前
2021/02/17(水) 19:29:15.15ID:p8cob7ED
テストコードはあって当たり前の前提でスレタイの話がしたかった...
2021/02/17(水) 19:40:45.14ID:p8cob7ED
まぁ、意味のあるテストコードがあればクソコードと言われるレベルのものはなくなるけどさ、そうじゃなくて

クソコードと良いコードを知った上でテスト駆動やるべきだからこそ、クソコードの分析がしたかったよ...
317デフォルトの名無しさん
垢版 |
2021/02/17(水) 20:38:23.05ID:ltamn3iy
むしろ時代の流れは既にテストコードを「書く」という流れではなく、既に外部ソフトウェアを利用して
テストする段階に来ている。これは日本では「単体」しないのですか?と受け止めれれるがそうではない。
例えばテストしづらいソフトウェアにはLinux-KernelがあるがリリースはTorvaldsが十分に安定していると
「感じ」たときにリリースされる。ではLinuxは全くテストしていないですか?と思うがそうではない。
Kernelはテストコードが書きづらいため、様々な工夫がされる。外部ツールとして静的コード分析、
継続的インテグレーションツール、テスト自動化など様々なツールが使われる。もちろん単体テストもある。
現在のソフトウェアの主流において(ランダムな引数を渡す)ファジングテストツール(Fuzzer)なども
使われる。日本では一向に使われる気配は無い(誰も使わない・知らない企業独自のプロダクトのような
自動ツールが使われるのみである)ストレステストツールは何も知らない営業のアホが書いた根拠不明の
性能要件を満たすためのツールではないのである。フェイクデータを用意してテストするのが一部では
流行っているがそれでは網羅性はない。
例えば、1ファンクション/メソッド/スコープの変数の数、分岐の数、ループ、演算子の数の増えれば
増えるほど複雑度は増大しバグが発生しやすくなるはずである。そう言った統計的な手法を見ないで
宗教のようにテストコードばかりに注目するのは悪である。
2021/02/17(水) 20:56:14.06ID:3Rkqt+9c
>>312
むしろテストコードがないからこそ仕様書をきっちり更新してる可能性のほうが高いやろ
それにコードからテストコードを作るのはアンチパターンだぞ
2021/02/17(水) 21:16:09.34ID:3Rkqt+9c
>>316
自分がクソコードだと思う例をあげて解説してみればいいんでない?
クソだと思ったものが意外とそうでもない場合もあればその逆もあるから
2021/02/17(水) 21:24:29.62ID:v0/tbLAB
再利用性の無いクラスは糞
お前らもあるやろ?
アプリ全体で一箇所でしかインスタンス化されないようなクラス
邪魔だなぁと思いつつも
それを書く事で若干の整理と局所化が得られるから作っちゃうようなクラス
2021/02/17(水) 21:48:55.78ID:FwS3TBTC
>>317
嘘つくな(笑)
オープンソースでなんか証拠持ってきてみ
322デフォルトの名無しさん
垢版 |
2021/02/17(水) 22:15:44.97ID:ltamn3iy
>>321
いろいろ書いてますが、どの辺が嘘だと言っていますか?全て?
2021/02/17(水) 22:36:40.80ID:JcWwc4WJ
>>318
> むしろテストコードがないからこそ仕様書をきっちり更新してる可能性のほうが高いやろ
ないない、世の中にはテストコードも仕様書もちゃんとしてる組織とテストコードもないし仕様書もちゃんとしてないクズ組織しかないと思っていい

> それにコードからテストコードを作るのはアンチパターンだぞ
そんなことはみんなわかってる
やむを得ずのケースな
2021/02/17(水) 22:43:42.98ID:FwS3TBTC
仕様書をきっちり更新しているとして、
ちゃんとその通りにテストしたことを担保するのはどうすればいいの?
なんでこの質問に答えられないの?
2021/02/17(水) 22:44:31.47ID:FwS3TBTC
>>322
ソースを持ってきてない所全て
2021/02/17(水) 22:52:29.81ID:gjncEnw2
パーフェクトRuby on Rails には、
毎週モジュールを更新してテストするように書いてある

こういうのが出来るのは、Ruby/Rails コミッターのいるような技術力のある自社開発系だけ。
普通の会社は、できた後は放置するだけw
一切、更新しない

会社全体で、AWS の800資格と、
全12資格を持つ、ジェダイマスターが7人いる、クラスメソッドの動画を見ると、
全部、Lambda などのサーバーレス

自社で毎週、OS・アプリ・モジュールなどを更新してテストできる、会社は無い。
だから、AWS がOS・Aurora などのデータベースなどを更新する、サーバーレスを使う

サイボウズのkintone は、Kubernetes で毎日すべてのシステムを破棄して、作り直している。
これが究極のTDD・継続的インテグレーション

毎日、全システムをrolling update する
2021/02/17(水) 23:03:43.66ID:3Rkqt+9c
>>323
>そんなことはみんなわかってる
>やむを得ずのケースな

やむを得ずのケースもやっちゃダメ
わかってるつもりでわかってないパターン
328デフォルトの名無しさん
垢版 |
2021/02/17(水) 23:09:24.60ID:ltamn3iy
>>324-325
まあ暇だから相手するけど、「その通りにテストしたことを担保する」っていうのはテストコードを
流しただけでは出来ませんよ。なぜならテストにもバグが介在するからです。イテレーションテストでも
反復回数が足りなければデグレします。極限値テストでもその中にバグを起こす特定値が無ければ
何の意味もありません。多くの人があんたの質問には答える価値があんまりないからじゃないかな?
「ソースを持ってきて」という表現方法もプログラミングに置き換えると非常に曖昧で解釈が不明です。
情報源のURLを提示しろ、元のオープンソース(笑)を証拠を持ってこいよ」どちらにも取れますが
プログラミングには向かない人だと思います。マウントポジション取りたいだけなら話は良く分かりますが
煽りたいだけであれば、幼稚園にでも通いなさい
2021/02/17(水) 23:14:35.28ID:FwS3TBTC
>>328
初っ端から論点をすり替えるなよ

もう一回やり直し
「手動テストでどうやってちゃんと書いてあるとおりにテストしたと担保するの?」
330デフォルトの名無しさん
垢版 |
2021/02/17(水) 23:16:22.98ID:ltamn3iy
手動テストなんて1回も書いた事無いのに、すべての人があんた以外の同一人物じゃないんだから
あんたの脳内が正常に回ってるかテストしたほうがいいんじゃないですか?
2021/02/17(水) 23:19:03.48ID:FwS3TBTC
>>328
わかりやすく言えば

一人目「なんか手順を省いちゃった気がするけど、次の人がちゃんとやるだろうからヨシ」
二人目「正しく動いてない気がするけど、前の人がスクショとってOKって言ってるからヨシ」
三人目「前の二人がOKって言ってるからヨシ」

こんなたくさんのスクショあっても見る時間ねーよヨシ

これをどうやって防ぐの?
2021/02/17(水) 23:19:39.55ID:FwS3TBTC
>>330
論点をすり替えて答えた気になるなって言ってるだけ

「手動テストでどうやってちゃんと書いてあるとおりにテストしたと担保するの?」
333デフォルトの名無しさん
垢版 |
2021/02/17(水) 23:24:26.28ID:ltamn3iy
こいつは相手にしちゃダメな人だったか、テスラでもトヨタでも自動運転のテストを公道でやってますが
担保するために何をやっているかと言えば色々な現実的な状況や環境、人の動きなど特殊な例外パターンを
実地でチェックシートを用意してテストしてます。コードを書いて自己満足しているわけではありません。
そもそも自動運転というか自動学習のようなモデルでは何が正しいのかを定義することさえ困難です
「論点をすり替えて答えた気」といっていますがあなたが何を「論点」としているのか、まったくもって
説明していません。とても残念な方だと思いますが同僚や仲間には迷惑をかけないようにしましょう
2021/02/17(水) 23:26:31.02ID:FwS3TBTC
>>333
だから論点すり替えるなって言ってるだろ
自動運転の話なんかしてないんだわ

「手動テストでどうやってちゃんと書いてあるとおりにテストしたと担保するの?」
これに答えればいい。色々やってます!は答えじゃないからな
335デフォルトの名無しさん
垢版 |
2021/02/17(水) 23:35:59.81ID:ltamn3iy
「手動テストでどうやってちゃんと書いてあるとおりにテストしたと担保するの?」
「(手動テストでは)テスト項目を作成し、(完璧な)テスト要員はテスト(それに完全に従い)した結果を記録します」

この時、不良なテスト要員やテスト抜け、人間らしいヒューマンエラー許容しません。これはテストコードを
作成した場合についても同じです。だからあんたの脳内に大事にしまってある「論点」を語りなさい
2021/02/17(水) 23:52:39.21ID:rF5wbzd/
自動テストだと手動テストでできない説明ができるって?
2021/02/18(木) 00:00:13.06ID:uiIjzHNM
>>335
> 「(手動テストでは)テスト項目を作成し、(完璧な)テスト要員はテスト(それに完全に従い)した結果を記録します」

完璧なテスト要員なんて存在しません。
書いてあるテスト項目通りに、人間が作業したことを担保(記録)する方法を聞いています。

「完璧に記録するにはどうすればいいですか?」という質問に対して
「結果を記録します」は答えになっていません。
それが質問です。
2021/02/18(木) 00:03:21.14ID:CDAKHrDM
自動テストはオマケ。最後は品質保証チーム。
2021/02/18(木) 00:04:06.22ID:uiIjzHNM
>>336
> 自動テストだと手動テストでできない説明ができるって?

今の論点は「テスト項目通りに間違いなくテストを行ったか?」です
人間がやる以上、間違い(ミス)すること作業することはできないので、それを防ぐのが自動テストです。

もし手動テストでやる場合「書いてあるテスト項目に従い人間が間違いなく行動する」
または「人間の行動を後から再現できるように完璧に記録する」のどちらかが必要になるはずです
これだけやって、ようやく自動テストと同等の信頼性が得られますが、
それでも実行速度(テスト実行時間)はコンピュータにはかないません。
2021/02/18(木) 00:04:52.19ID:uiIjzHNM
人間がやる以上、間違い(ミス)することなく作業することはできないので、それを防ぐのが自動テストです。
341デフォルトの名無しさん
垢版 |
2021/02/18(木) 00:05:13.93ID:GR+auC/2
やっぱマウントポジション取りたいストレスだらけの無能ハゲやったか
手動テストって上の方でも書いてるけど、ほんまもんの気狂いだなww
同様にテストコードも完璧なテストなんてありませんし書けません
2021/02/18(木) 00:07:58.06ID:uiIjzHNM
>>341
いやちゃんと>>339に書いたんだからレスしろよ
マウント取るんじゃなくて、お前がマウント取られに行ってるじゃんw
言い返す言葉はなにもない。だがレスだけはしたいんだって
2021/02/18(木) 00:09:19.27ID:uiIjzHNM
> 同様にテストコードも完璧なテストなんてありませんし書けません
だーれも完璧なテストがあるなんて言ってない

完璧なテストがない=必ず後で修正が入るからこそ、
何度も高速に同じテストを実行できることが重要なんだわ
2021/02/18(木) 00:10:15.82ID:uiIjzHNM
何度も高速に同じテストを実行できることが重要だから
それを人間の手動テストでどうやるの?と聞いてる

無理。だから自動テストが重要
って答えになるやろが?
2021/02/18(木) 00:29:33.49ID:unHOG45Z
は?全く苦労に見合った見返りが見えないんだが?

あとサブルーチンの戻り値で分岐しまくるコードが入りまくってるときに
テストコードってどうやって書くの?
戻り値を意図的に制御できないじゃん?
2021/02/18(木) 00:31:37.57ID:uiIjzHNM
>>345
> あとサブルーチンの戻り値で分岐しまくるコードが入りまくってるときに
手動テストってどうやるの?

それを書くのが先だ
2021/02/18(木) 00:34:28.27ID:uiIjzHNM
手動テスト vs 自動テストで
ドロー(引き分け)になる項目を持ってきて
勝てると思ってるんだろうか?

手動テストは、高速に同じテストを何度も実行できない
手動テストは、正しくテストをしたという担保がない

この項目で負けてるだろうが
そこに引き分け項目持ってきても勝てねーよw
2021/02/18(木) 00:42:57.81ID:80X4NLoW
なんかもう、テストコード書く書かないのスレ立ててそこでやれば?いつまでこのネタ引っ張るの?
349デフォルトの名無しさん
垢版 |
2021/02/18(木) 00:43:39.30ID:GR+auC/2
>>342
思い込みのハゲしい人ですね。最初からいいますよ?私は自動テストも手動テストも否定してない。まず上の方の
人たちと同一人物視をやめなさい。あなたは「担保するの」と書いていて「速度」のことなんて、ID上は今まで
1回も言っていません。ちゃんと質問するなら
「手動テスト”だけ”で仕様通りにテストを行い、変更があったら”同じテストを繰り返した”と
 担保して、素早いテストの繰り返しによる開発を継続するのでしょうか?」ですよね

もちろん手動テスト”だけ”でも時間と費用があれば無理ではありませんが、当然時間がかかります。
この質問であれば、「素早い開発」の要件を満たせないのでテストコードによるイテレーションテスト「も」
必要になります。「無理」というのはあんたの頭の中でできてるストーリーに無理ができているだけです。

「嘘つくな(笑) オープンソースでなんか証拠持ってきてみ 」
このような会話は5chだから通用しますが、現実世界ではあなたは爪弾きでしょう。何を言いたいのか
サッパリ分かりません。日本語が不自由な方かと思いましたが、思考が不自由な方だ
1.聞きたいことが質問にまとめられていない
2.聞きたいことを回答する人を馬鹿にして遊んでる
3.最初から(自分だけの)結論ありきで語っている

また頻繁に変更が入るコードで何度も同じテストを実行することはありますが、変更が入らないコードでは
同じテストを実行する事は無駄です。一部のツールはテスト結果で省略すらします。
自動vs手動という考えはあんたの頭の中にしかない初めて披露された考えです。この両者は対立構造では
ありませんし、ましてや勝つとか負けるとかどーでもいい事です。それがマウントと言っているのですよ
2021/02/18(木) 00:44:42.11ID:vQ0bM4Ab
>>345
一般的な言語なら普通にできるよ
2021/02/18(木) 00:45:02.81ID:uiIjzHNM
長文読まないよ
2021/02/18(木) 00:45:40.48ID:uiIjzHNM
結局の所、手動テストは時間がかかって
信頼性もないってことだろ
2021/02/18(木) 00:46:31.03ID:unHOG45Z
>>347
自動テストでそれは解決できないだろ
2021/02/18(木) 00:48:39.39ID:uiIjzHNM
>>353
それはシートベルトでは衝突事故は防げないだろ論法?w

手動テストは、高速に同じテストを何度も実行できない
手動テストは、正しくテストをしたという担保がない
自動テストで解決できてるだろ
355デフォルトの名無しさん
垢版 |
2021/02/18(木) 00:49:53.24ID:GR+auC/2
>>348
ごめんね、引数が100個あればクソコードかと言えば、そうでもなく可変引数展開するような言語では
配列渡しになったりするので「テストコード」も「開発手法」もここのタイトルだと何も関係ないね
2021/02/18(木) 00:51:16.80ID:unHOG45Z
>>354
自動テストってなんで正しいの?
2021/02/18(木) 00:52:15.60ID:unHOG45Z
自動テストってコードありきで作っちゃったゴミカステストしか見たことないよ
2021/02/18(木) 00:54:40.11ID:uiIjzHNM
>>356
それをいうなら、
「自動テストは、正しくテストをしたという担保があるの?」
だよね。

コンピュータは書いたとおりに動く
だから、テストコードで書いたテストを
正しく行ったことが担保されている

それに対して人間は、いくらテスト指示書にこうしろと
書いてあったとしても間違えることがあるしサボることもある
なんかおかしい気がしたけど気づかずにスクショ取ってOKと記入してしまうこともある
だがあとになって調べようとしても、その時のテストが
間違っていたり手抜きしたことがわからない
359デフォルトの名無しさん
垢版 |
2021/02/18(木) 00:56:12.19ID:GR+auC/2
>>357
OSSなら基本的にテストファーストはしてないね、プロトタイプ作って0.1にバージョニングして
後からテストコード追加ですね。業務コードだとTDDを最初からやろうとする企業もあるけどさ
作ったテストが要件や機能に合わなくなることはあるあるネタだ
2021/02/18(木) 00:57:26.69ID:unHOG45Z
>>358
いや、ないよ
2021/02/18(木) 00:57:49.51ID:uiIjzHNM
>>359
普通、一つのコミットの中にテストコードと実装コードが含まれるけど
テストファーストしてないという根拠は?

後からテストコードが追加されたことがあるからといって、
それはテストファーストしてない理由にはならない
2021/02/18(木) 00:58:20.53ID:uiIjzHNM
>>360
何か言い返せよw
言い返せないのにレスだけするから恥をかくんだぞw
2021/02/18(木) 00:59:52.93ID:unHOG45Z
>>362
だってないもん
単体テストなんか仕様書ビルドしてできたわけでもねーのにそんな正しさがいきなり入る前提なのが気が狂ってる
2021/02/18(木) 01:01:03.98ID:unHOG45Z
バカが作ればバカなりな正常が定義されるだけだろ
夢みんな
2021/02/18(木) 01:01:59.98ID:uiIjzHNM
>>363
ああ「正しさ」だけ書いて論点をすり替えようとしてるのねw

俺がずーっと言ってるのは
「手動テストでどうやってちゃんと書いてあるとおりにテストしたと担保するの?」
2021/02/18(木) 01:02:43.80ID:uiIjzHNM
手動テストではいくらテスト項目が書いてあったからって
そのとおり正しくテストしたという保証がまったくないんだわ
人間は間違えることがあるから
2021/02/18(木) 01:04:27.27ID:unHOG45Z
>>365
いや、それ自動テストと手動テストに違いないじゃん
自動テストの間違ったテストコードで正常になっちゃったも
手動テストで間違ったエビデンスのとり方して正常になっちゃったも
違いねーし
頭おかしんちゃう?お前
2021/02/18(木) 01:06:47.98ID:uiIjzHNM
>>367
自動テストの間違ったテストコードで正常になっちゃった場合は
テストコードを見れば、テストコードが間違っていたとあとからわかる

手動テストでは、テスト作業が間違っていたのかどうかもわからない
あとから見た所で、作業内容自体までスクショ取ってないから。
それとも監視カメラで作業員の行動を動画で撮って
あとからその動画を眺めるつもりか?
コンビニの監視カメラの映像を確認するように

一体何時間時間がかかると思ってるんだ
2021/02/18(木) 01:07:56.11ID:unHOG45Z
>>368
え?わかるやり方もあるでしょ?バカなん?
2021/02/18(木) 01:08:25.16ID:uiIjzHNM
だから手動テストでは
もう一回やったら再現できませんでしたとか
ちゃんとテストしたのに実際は動きませんでした
とか発生した時に、その原因の追求ができない

うごくからヨシっていう
適当な仕事をしてる
2021/02/18(木) 01:09:01.59ID:uiIjzHNM
>>369
その分るやり方を書けよw
お前議論できねーな

言い返す言葉がないならレスしなくていいんだぞ?
2021/02/18(木) 01:09:10.15ID:unHOG45Z
>>368
あとテストコード見たってわかんないよ
仕様書見るんでしょ?
それは手動テストだって同じだよね?
2021/02/18(木) 01:10:46.79ID:unHOG45Z
>>370
は?
自動テストだって同じでしょ?
デバイス絡みがコードだけで動くわけ無いじゃん
2021/02/18(木) 01:11:16.43ID:uiIjzHNM
>>372
テストコードみれば、実際にやったテストがわかるだろ?
馬鹿なのか?

手動テストでは、何が書いてあっても
実際にどういうテストをやったかがわからない
人間が間違えたかもしれないって話をしてるのだが
ついてこれてる?
2021/02/18(木) 01:11:52.03ID:unHOG45Z
俺がつないであるプリンタを踵落としで叩き割ったらもう動かないよね?
2021/02/18(木) 01:12:02.27ID:uiIjzHNM
>>373
> 自動テストだって同じでしょ?

なにが同じなんだよ?

自動テストなら実際にやったテストがわかる or 手動テストではわからない
って話をしてるんだが、ついてこれてる?
377デフォルトの名無しさん
垢版 |
2021/02/18(木) 01:12:12.31ID:GR+auC/2
>>363
「普通、一つのコミットの中にテストコードと実装コードが含まれる」間違い、0点です。
OSSでもクローズドソースでも普通はコミットの中には、偏在が生じます。TDD推進や原理主義者では
テストコード比率は80%だと主張する方もいます。一般的にOSSではテストコードがほとんどない方が
多いです。もちろんこれの正当性を主張するわけでもありませんが、何故そうなるのかと言えば多くが
個人開発だからです。いい加減な自動テストが含まれていて、それをテストファーストと主張するなら
主張すればいいですよw
2021/02/18(木) 01:13:10.82ID:uiIjzHNM
>>375
その点テストコードは、バージョン管理するから
動いていたものが動かなくなった原因までしっかり記録される
2021/02/18(木) 01:13:51.03ID:unHOG45Z
>>374
は?それが正しいかどうかは仕様書見ないとわからないだろ?
仕様書とテストコードとコード見るんやな
なんか無駄じゃねぇの?
仕様書とコード見るだけでよくね?

なんでテストコード書く必要あったんだっけ?
2021/02/18(木) 01:15:16.04ID:unHOG45Z
そもそも仕様書とコードを見比べてどうして正しいかわからないんだっけ?
2021/02/18(木) 01:15:18.95ID:uiIjzHNM
>>377
> 「普通、一つのコミットの中にテストコードと実装コードが含まれる」間違い、0点です。

ん?証拠を持ってくればいいわけ?

例なんていくらでもあるけど、一つのコミットの中にテストコードと実装コードが含まれてます。
https://github.com/facebook/react/pull/20813/files
2021/02/18(木) 01:15:52.08ID:unHOG45Z
>>381
ウィルス
2021/02/18(木) 01:16:06.06ID:uiIjzHNM
>>379
いい加減「正しい」の意味をすり替えるのやめろ

「書いてあるとおりに正しくテストした」ことが
自動テストならわかるって言ってるだろ
2021/02/18(木) 01:16:36.10ID:uiIjzHNM
>>382
そうだよね。そうやって嘘を付くしかないもんねw
■ このスレッドは過去ログ倉庫に格納されています