X



「単体テストを手動で行いエビデンス取る」の破壊力

0001デフォルトの名無しさん
垢版 |
2020/09/23(水) 12:29:11.02ID:irsqaiS+
単体テストは自動化するものだと思っていたから
一瞬何を言っているのかわからなかった
0568デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:17:53.43ID:aZrfGhEg
>>528
海外を参考に「単体テスト」って言葉を作ったんだよ
外国人が「タンタイテストゥ」とか言ってるわけないでしょ、アホかw
国内大手ベンダーが先行してIPAが後追いで追認してきたのが今までの歴史でしょ

>>530
ソフ開持ちなので試験に出てくる意味での単体テストは完全に把握してるぞ
あれはあれ、これはこれ
0569デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:19:03.50ID:EdLJXccd
>>561
別の意味ってどういう意味なんですか?
にんじんを野菜と言っても良いようにUnit Testはテストと言っていいし単体テストと言って問題ないでしょう
やってることだけ見れば認知テストとかでも良いかもしれないですね
0570デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:19:49.69ID:EdLJXccd
>>567
          ____
        /      \
       /  ─    ─\
     /    ⌒  ⌒  \     ハハッワロス
     |       ,ノ(、_, )ヽ    |
      \      トェェェイ   /
       /   _ ヽニソ,  く
0571デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:21:17.55ID:EdLJXccd
トゥメイトウ
0572デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:21:18.84ID:aZrfGhEg
エビデンス=納品物
ソフトウェアが正しく動く事=納品物ではない

どっちが大事かは明らか
0574デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:21:56.91ID:EdLJXccd
>>572
そこの君、良いこと言った
0577デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:24:14.97ID:EdLJXccd
動けば良いってもんじゃない
0578デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:24:40.16ID:+yUuwD4N
しかしマジでエビデンスを納品して
ソフトウェアを納品しない会社があるとはねw
0579デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:27:07.60ID:EdLJXccd
顧客が本当に欲しかったものはエビデンスだったんですよー
0580デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:28:41.49ID:EdLJXccd
このスレでもソースは? 文献は? ってしきりに聞く人がいるでしょ
エビデンスっていうのは万人に共通する価値基準でありアイデンティティの強化する
アイテムとしてやはりIT業界の顧客にはそういう人があれですねー
0581デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:30:23.54ID:EdLJXccd
Unit Testがプログラマの自己満足であるのに対して
Integration Testは顧客満足なんです
プロダクトとしてどちらを重視すべきかは明らかですね
0583デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:32:56.53ID:EdLJXccd
NGアピールうぜえよwwwww
0584デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:33:24.08ID:aZrfGhEg
納品日に持っていくのは大量に印刷したエビデンス
そしてマニュアル
あと仕様書だか設計書だかそんな感じのタイトルも覚えてないような書類
そして一番大事なソフトウェアはCD-Rに書き込んで、自社のロゴ入りの紙袋に入れて数人で運び出しうやうやしく納品
客もマジメな顔して印刷物をみて「ここの文字が間違ってる」とか言ってる

そしていつの日か時間がたち、ふとCD-Rを見てみると新品
そう、書き込みするのを忘れていたのだ!!
0585デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:34:58.63ID:EdLJXccd
素直になれよ本当は俺様のレスが見たいんだろwwwww
俺様の知性あふれるレスポンスに心がふるえて恋しちゃってるんだろwwwwww
wwwwwwお友達から始めよう
0586デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:36:01.64ID:EdLJXccd
>>584
COBOL系の仕事でその伝説は聞いたことがある
0587デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:36:05.59ID:+yUuwD4N
>>581
> プロダクトとしてどちらを重視すべきかは明らかですね

ああ、どちらか一方だと思ってるのか
両方だろ
こりゃだめだwww
0588デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:37:43.50ID:HrzH1nM7
>>567
いつも正しく動いたら誰も苦労しないんやで。
必ずしも正しく動かないからこそ責任逃れのためのエビデンスが必要なんやで。
0589デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:39:26.68ID:EdLJXccd
>>587
プログラマの自己満足を重視してどうすんだハゲwwwwダメなのはお前の頭だwwwww
Unit Testは認知能力に欠陥のある人間のために考案されたエクササイズ的な位置づけなわけ
Unit Testが発明されたアメリカのITの歴史を見れば火を見るよりあきらか
Unit Testを発明した人間がいまどうなってるか調べて見ると良い
0590デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:43:08.63ID:EdLJXccd
>>588
エビデンスで責任逃れはできます

みなさんも数兆円を動かすような重責を担う仕事についたらエビデンス残すと良いよ
一部上場のITゼネコンでバリバリ仕事こなしてる俺からのアドバイス
頭の片隅に置いて困ったときに思い出したら良いよ
0591デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:44:20.76ID:EdLJXccd
責任は負えば良いってものじゃないリスクヘッジ大事、エビデンス大事、いざというときの保険
0592デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:45:07.89ID:aZrfGhEg
ソフトが動くかどうかなんて些細な問題であって業務が動き続けばいいんだよ

不具合が出るのがわかってたら客に
「印刷ボタン押したらバグるので、こっちのPDFボタン押してから印刷してください」
って通達しときゃいい

もしオペレーターが間違えたら、高菜を食べた客をラーメン屋が咎めるような口調で
「どうして印刷ボタンなんて押したんですか!」って言えばいい
オペレーターだって安くない給料貰ってるんだから、手順書更新したらちゃんとその通り動かしてくれるよ
0593デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:45:21.18ID:EdLJXccd
君たちがバカにしてるエビちゃんも仕事を円滑に回すための一つのツールなんですねー
0595デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:46:48.48ID:EdLJXccd
>>592
良いこと言った、そのとおり
0596デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:52:55.64ID:HrzH1nM7
>>594
前提条件満たした状態ではちゃんと動いていたことを証明するのがエビデンスやでぇ。
想定外のことをされてバグっても「バグが出た前提条件のテスト項目がないのに承認した貴方にも責任がある」と言うためのエビデンスやで。
0597デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:55:57.33ID:aZrfGhEg
「テストの時は動いてたんですけどねー」
「ログ出力を設定してちょっと様子みてみましょうか」
「再発した時の手順書を追加しておきますね」
0598デフォルトの名無しさん
垢版 |
2020/10/07(水) 20:58:16.33ID:EdLJXccd
>>597
これは有能なプロジェクトマネージャ
無能な奴は客の言うなりになってシステムを肥大化させて赤字にする
0599デフォルトの名無しさん
垢版 |
2020/10/07(水) 21:12:48.59ID:vndR91+l
>>588
せやな。現実はそういう証拠も要求されるよな。自己主張ばかりしていないでエビデンスを要求する人の立場と気持ちを考えればいい。

利害関係者はプログラマーだけじゃないだろうに。

>>592
そういう不具合を防ぐための単体テスト
単体テスト的には些細な問題と言い切るべきではないと思う。

設計が糞すぎてコードの修正に時間が掛かるのが理由だとしたら、ますます単体テストで安定するコードの設計を促せなかった罪は大きい。
0601デフォルトの名無しさん
垢版 |
2020/10/07(水) 21:27:37.91ID:EdLJXccd
底辺コーダー単体テストの夢を見る
0602デフォルトの名無しさん
垢版 |
2020/10/07(水) 21:28:38.51ID:EdLJXccd
>>600
わいは一応製品開発部部長だからどちらかというと1級建築士ですかね
0603デフォルトの名無しさん
垢版 |
2020/10/07(水) 21:35:10.23ID:EdLJXccd
社内で実験や研究はやったがUnit Testはユーザ満足度をあげるほど製品品質を左右しないんよねー
現代の開発は統合開発環境や静的検査、動的検査が整備されてコーディングミスはほとんど起きないってことと
単純にうちの社員が優秀ってのもあるだろうが、コーダが書くUnit Testに意味はないとうちの部署では結論した
0604デフォルトの名無しさん
垢版 |
2020/10/07(水) 21:38:29.34ID:EdLJXccd
システムテストが良い、あれはシステムの品質も社員の質も上がる
業務要件もシステムのアーキテクチャも理解してないと観点出しもテストケース作ることさえできないから
システムテストはおすすめ、社員の実力が底上げされる
0606デフォルトの名無しさん
垢版 |
2020/10/07(水) 23:03:30.00ID:MKuB1ZsU
ガチガチに後方互換性を守りたい場合はUnitTestしてもいいかもね
ライブラリメーカーとかならいいんじゃないの
0607デフォルトの名無しさん
垢版 |
2020/10/07(水) 23:14:33.59ID:LK1LuHNw
> ガチガチに後方互換性

言い方がおかしい。たいていはバージョンが有るようなものじゃないんだからさ
この場合は、何らかの理由で修正を入れたときに、エンバグしないように
ガチガチにテストするということだろ

修正なんてどうしてもはいるんだからさ、ガチガチにテストしておかないとだめやろ?
修正したときのエンバグ防止を、ガチガチな後方互換性と言ってるなら
わからなくもないけどさ。エンバグしないってことは、ガチガチな後方互換性とも言えるからね
0608デフォルトの名無しさん
垢版 |
2020/10/08(木) 11:16:14.56ID:6clXcWBV
いまさらどうでも良い話だが
手動か自動かなんて本質とは何の関係も無いぞ
信頼性はテストケースを網羅出来てるか出来てないかだけだ
0609デフォルトの名無しさん
垢版 |
2020/10/08(木) 12:00:25.90ID:Pr6ASxb2
>>608
何の本質?
0610デフォルトの名無しさん
垢版 |
2020/10/08(木) 12:37:21.94ID:bBuM66mL
EdLJXccd
kZm+fu8v
IgGP+BQU
ycF3TYue
4yJ9ltzt
このスレが盛り上がった原因は主にこいつらか。
厶板にも隔離病棟が必要な気がしてきた。
0611デフォルトの名無しさん
垢版 |
2020/10/08(木) 12:49:41.09ID:NhC81FQJ
テストをしなくてもいいぐらい小さく簡潔なプログラムブロックを作り組み合わせる

組み合わせで間違いが起こらないように関数型の知見を応用する

これだけでいい
これができてればバグなんて入りようがないから、テストほとんど意味ない
0613デフォルトの名無しさん
垢版 |
2020/10/09(金) 11:04:06.44ID:TRjG/vuN
>>505
単体テストは一般的にもIPA的にも機能性にフォーカスしたテストだからその記述は誤り

ここはそんな基本的なことも知らない奴らが一日中無意味な雑談をするスレなのでまともな回答を期待してはいけない
0614デフォルトの名無しさん
垢版 |
2020/10/09(金) 11:43:22.54ID:8qJEmYsV
>>613
> 単体テストは一般的にもIPA的にも機能性にフォーカスしたテストだからその記述は誤り
理由は

単体テストは、機能性にフォーカスしたテストであり
プログラムの内部設計書に基づいてホワイトボックステストを実施し、要求性能を満たしているかの確認を行います。

間違ってないよね?
0615デフォルトの名無しさん
垢版 |
2020/10/09(金) 11:47:34.84ID:tUZvClkH
個性あふれる文化の前には定義など無意味。
単体テスト=コードレビューという場所だってあるんだぜ。
0616デフォルトの名無しさん
垢版 |
2020/10/09(金) 11:56:10.47ID:8qJEmYsV
>>615
その場所がどこか言えるなら、一般的な定義と言えるだろう

企業秘密だから言えるわけないとかいう話なら
それは一般的な定義じゃないだろう
0617デフォルトの名無しさん
垢版 |
2020/10/09(金) 12:36:02.83ID:mOpqVRBo
>>613
試験勉強に毒されて正しいとされる回答を妄信するパターンだね
社会人になって治る人と治らない人がいるんだけど
治らない人は自分で考える力がないので総じて使えない
0618デフォルトの名無しさん
垢版 |
2020/10/09(金) 12:40:07.10ID:EjYkYVIx
>>617
正しい回答とは限らないから、間違ってんだという
根拠をまったく言わずに否定するパターンだね
根拠がないなら主張するのやめたら?
0619デフォルトの名無しさん
垢版 |
2020/10/09(金) 12:43:02.32ID:83iRAGlc
この手の議論をする時は国家資格や有名なベンダー資格等で扱う言葉で議論するべき。

そもそも、企業勤めで資格取る奴は経験も十分に積んでるよ。
資格なんて大学受験に比べれば楽すぎる。
なんで、たったの数千円でとれる資格を取らないの?

言葉が共有できない猿が議論に参加すると邪魔だから消えてほしいね。
0620デフォルトの名無しさん
垢版 |
2020/10/09(金) 12:46:14.62ID:lC8K76Tw
なんで資格を取らないのかって議論にすり替えるのやめてほしい
0621デフォルトの名無しさん
垢版 |
2020/10/09(金) 12:48:03.07ID:lC8K76Tw
>>616
一般的な定義かどうかを議論するのやめてほしい
0622デフォルトの名無しさん
垢版 |
2020/10/09(金) 12:48:25.97ID:83iRAGlc
>>617 ←こいつが始めた話だろう。
それ以前にも似たような発言がある。
なぜ、そっちに突っ込まない。同一人物か?
0623デフォルトの名無しさん
垢版 |
2020/10/09(金) 12:48:37.58ID:EjYkYVIx
資格を取らなくてもいいよ。
ただし世間一般の常識を知らないと潰しが効かなくなる
0624デフォルトの名無しさん
垢版 |
2020/10/09(金) 12:49:44.16ID:EjYkYVIx
>>621
> 一般的な定義かどうかを議論するのやめてほしい

なぜ?一般的な定義で話をするのは当たり前でしょ?
そうでないなら○○の定義ではってちゃんと言うこと
一部でしか使われない定義をいっても通じるわけがないんだから
0625デフォルトの名無しさん
垢版 |
2020/10/09(金) 12:51:35.65ID:lC8K76Tw
>>505
>パフォーマンスの性能のことだとすれば、性能以外は確認しない感じの文章になる
>
>普通に間違いっぽいね

仮定を置いて間違いが導かれるなら仮定が誤りだと結論できる
0626デフォルトの名無しさん
垢版 |
2020/10/09(金) 12:53:40.49ID:lC8K76Tw
>>624
普通は通じるよ、語用論でググってみ、概念と単語を同じものだと思ってるから理解できないんだよ
君のコミュニケーションにおける相手の言葉への不寛容さはアスペと呼ばれてもおかしくないよ
0627デフォルトの名無しさん
垢版 |
2020/10/09(金) 12:56:26.55ID:lC8K76Tw
言葉の一部を切り取って騒ぐマスコミとやってることは変わらん
文脈からどういう意味で使ってるのが類推して理解するのが普通の人のコミュニケーション
言葉の定義がー定義がーなんてリアルな会話ではやらないでしょ?
それをやったら会話にならないと思われるから
0629デフォルトの名無しさん
垢版 |
2020/10/09(金) 12:59:02.45ID:lC8K76Tw
5chはアスペに寛容なコミュニティとも言えるかな
0630デフォルトの名無しさん
垢版 |
2020/10/09(金) 13:00:31.33ID:83iRAGlc
昼休みに話の通じない馬鹿に遭遇するとは思わなかった。
話さえ通じれば何でもいいが、駄目だなこりゃ。
厶板にが過疎化する理由がよくわかったよ。

二度とこの板に来ないほうがいいな。
知的障害者との会話は疲れる。
0631デフォルトの名無しさん
垢版 |
2020/10/09(金) 13:01:02.93ID:EjYkYVIx
>>626
そんな話はしてない。通じるかどうかじゃなくて
"別の意味として"間違って通じてしまっては意味がないから
一般的な定義の話しようと言ってるだけ
0632デフォルトの名無しさん
垢版 |
2020/10/09(金) 13:03:06.66ID:EjYkYVIx
>>627
> 言葉の定義がー定義がーなんてリアルな会話ではやらないでしょ?

そりゃそうだろw
リアルな会話で「俺の会社では」なんて話をしないんだからw
0633デフォルトの名無しさん
垢版 |
2020/10/09(金) 13:20:26.77ID:lC8K76Tw
>>631
通じるわけがないって言ってましたよね、そんなことないですよってこと

>>632
リアルではしないんだ
0634デフォルトの名無しさん
垢版 |
2020/10/09(金) 13:47:09.26ID:JQ1AMLdD
で、その会社文化とやらのテスト分類定義を採用すると、
IPAのテスト分類定義を採用するのに比べてどんなメリットがあるんだい?
0635デフォルトの名無しさん
垢版 |
2020/10/10(土) 05:20:40.98ID:YQJRDE1T
何でこんなスレが伸びてるんだと思ったらあからさまな釣りに釣られてるやつが多かっただけか
0636デフォルトの名無しさん
垢版 |
2020/10/11(日) 00:58:37.49ID:jQvs4XJ7
たんたい‐テスト【単体テスト】 の解説
《unit test》ソフトウエアテストの一。動作対象を小さな単位に分割してテストすることを指す。→結合テスト →ビッグバンテスト
0637デフォルトの名無しさん
垢版 |
2020/10/11(日) 01:00:37.45ID:jQvs4XJ7
言葉の定義は設計書の付録についてくるでしょ
リアルな会話でやらない人は上流工程に参加してないだけ
0638デフォルトの名無しさん
垢版 |
2020/10/11(日) 01:02:41.18ID:QQ2vPcGT
ソフトウェアの最小単位は画面やページやろ?
どうやって1つの関数でテストできるっていうんだ?
0639デフォルトの名無しさん
垢版 |
2020/10/11(日) 11:16:33.93ID:jQvs4XJ7
そうなんだよ
小さい単位だとしか定義されていない
画面は論外としても関数だとは誰も言ってない

昔は暗黙の了解で
単体テスト=関数だった

推測だが
CUIアプリの場合:単体テスト=関数
GUIアプリの場合:単体テスト=1機能を実現する為の最小コンポーネント群
という風になってしまったんじゃないだろうか

要するにCUIのC言語アプリなら関数を最小単位にするのは直感的で
GUIのVBアプリならテキストボックス+ボタンのセットを最小単位とするのが直感的だった

だから自然と2つの意味が併存してしまい
しかも実施時には違和感を感じなかった
0640デフォルトの名無しさん
垢版 |
2020/10/11(日) 11:39:31.27ID:rsxmIi7K
結論

無能は関数単位でテストする方法がわからない
その方法が存在することを知らない
だから実行ファイルを使ってテストすることしかできない
0641デフォルトの名無しさん
垢版 |
2020/10/11(日) 11:41:06.19ID:rsxmIi7K
>>639
> CUIアプリの場合:単体テスト=関数

無能の場合CUIアプリのテストとは
実行ファイルを実行してテストする

例えばgitの場合、gitのすべてのコマンドを実行してテストする
git initをしたらどういうファイルが作成されるかをチェックしている
0642デフォルトの名無しさん
垢版 |
2020/10/11(日) 11:53:56.56ID:kZXFoyze
対象になってる粒度次第
0644デフォルトの名無しさん
垢版 |
2020/10/11(日) 12:00:01.38ID:mzj9OHDg
無能ほど無駄な仕事を多くやろうとする

コマンドごとにテストできることをわざわざ関数ごとにテストして膨大な工数を無駄にする
しかも関数のテストをしたってコマンドが正しく動作する保証にはならないから関数のテストは意味がない

バグが混入しにくい堅牢なコードを書くことに労力をかけて
テストはある程度大きな粒度でやったほうがいい
最小限のテストで最大の効果を得ることを考えろ

暇を持て余した学生のお遊びじゃないんだ
業務では工数は限られてる
0645デフォルトの名無しさん
垢版 |
2020/10/11(日) 12:14:15.39ID:TaKoEgM9
また業務ガイジ湧いてて草
0648デフォルトの名無しさん
垢版 |
2020/10/11(日) 13:19:41.83ID:jQvs4XJ7
納品の為のテスト
トラブル対応の時間を減らす為のテスト
損害賠償を回避する為のテスト

同じように見えるテストでも目的は色々
目的が変われば手段も変わる
0649デフォルトの名無しさん
垢版 |
2020/10/11(日) 18:23:47.93ID:z7d9ld+N
なるほどな
仕様を満たしているか確認するためのテストはしなくていい現場ってのがあるわけだ
0651デフォルトの名無しさん
垢版 |
2020/10/11(日) 19:47:52.34ID:jQvs4XJ7
自動テストはダメなの→自動テストが正しい事はどうやって担保するのか→人間のほうが信用できない→自動テスト作ってるのも人間→ふぁ?

人類はこうやって無駄を繰り返してきた

そもそも自動テストは繰り返し何度も行う前提
ウォーターフォールであるおまえらの現場では自動テストは相性が悪い
0652デフォルトの名無しさん
垢版 |
2020/10/11(日) 19:49:19.76ID:kFRHzfrM
>>651
根本的にわかってないだろw

> そもそも自動テストは繰り返し何度も行う前提
テストが一回で終わることなんてありえないよ
バグを修正するたびに全部テストやり直しだからね
1つでも見つかったら全部やり直し
0653デフォルトの名無しさん
垢版 |
2020/10/11(日) 20:08:06.89ID:IRO7qPRX
バグはコンパイラに探させたほうがいい
だから関数型がいいんだ
関数型はテストもシンプルで少なくて済む
0656デフォルトの名無しさん
垢版 |
2020/10/11(日) 20:51:40.01ID:dpbsaRzg


ゲームで設定から言語を
英語から日本語に変更したら
日本語で表示されるでしょ?

関数型でも同じことなんだが
0658デフォルトの名無しさん
垢版 |
2020/10/11(日) 21:07:29.17ID:jQvs4XJ7
ナウなヤングはステートを持たないコーディングがバカウケでしょ?
DBに持たせてアプリケーションサーバには持たせない
0659デフォルトの名無しさん
垢版 |
2020/10/11(日) 23:34:04.06ID:W4Wa1Rix
言語変更の問題なら、
すべきテストは異なる環境を網羅した横展開のテストだけど、
>>1の指摘なら、全く同じ環境なのに手動で1000回試行しろと命じられる縦に掘っていくテスト
0660デフォルトの名無しさん
垢版 |
2020/10/13(火) 19:03:34.58ID:iaFJXjyC
>>656
純粋に関数型を突き詰めるなら状態が必要な部分は全部引数に追い出すのが正解じゃないかな
多言語対応必要なラベルは言語コンフィグ参照なんかせずに毎度文字列を受け取れってことだ
まあ流石にそれはきついだろうから文字列そのものじゃなく文字列を吐くモナドを受け取る形でもいいと思うけど
0662デフォルトの名無しさん
垢版 |
2020/10/15(木) 16:45:53.96ID:HNijBbKl
>>661
ちゃんと読めよ
自動化してもテストケースは人間が作ってるから
テストケースも自動化しようぜ!っていうのがHypothesisっていうツールの役目だろ?
だから自動テスト自体を否定してるもんじゃないぞ

https://github.com/HypothesisWorks/hypothesis
0665デフォルトの名無しさん
垢版 |
2020/10/16(金) 08:32:18.61ID:FKXPrG5o
>>664
むしろ、従来の自動化程度では甘い。もっと自動化しようぜとしか読めないのだが。
てか、あんた、中学レベルの英語を読めないの?
レスを投稿する


ニューススポーツなんでも実況