「単体テストを手動で行いエビデンス取る」の破壊力
: デフォルトの名無しさん [sage] 2020/09/23(水) 12:29:11.02:irsqaiS+ 単体テストは自動化するものだと思っていたから 一瞬何を言っているのかわからなかった : デフォルトの名無しさん [sage] 2020/09/23(水) 15:38:04.57:93RKYZzv 自動化=手抜き : デフォルトの名無しさん [sage] 2020/09/23(水) 16:08:31.57:C5g/Szna SIだぁ : デフォルトの名無しさん [sage] 2020/09/23(水) 16:09:00.51:F6076QMN 手動=努力・根性・体育会系・無能 : デフォルトの名無しさん [sage] 2020/09/23(水) 16:56:51.63:EcLAlZaL たぶん、手動、自動化以前に単体テストができない人がいる気がする。 : デフォルトの名無しさん [sage] 2020/09/23(水) 17:43:13.71:qBH8cAxU 自動化って メソッドsumAtoFの場合 引数A,B,C,D,E,Fの 処理S=A+B+C+D+E+F 戻り値S のチェックって int S=sumAtoF(A,B,C,D,E,F); int chkS=A+B+C+D+E+F; if(S!=chkS) { エラー } みたいになるの? 無駄じゃね? : デフォルトの名無しさん [sage] 2020/09/23(水) 18:00:08.33:O1ICXtuo 指定されたテストケースを実行できない人はそういないだろうが 過不足ないテストケースを作り出すのはむしろできる人のほうが少ない 自動化を阻む一番の要因 : デフォルトの名無しさん [sage] 2020/09/23(水) 18:10:37.43:9Qi89m1Q 1+2+3+4+5+6 の結果が 21 になってることを確かめるのがテストだろ なんでテストで変数使うんだよw : 5 [sage] 2020/09/23(水) 19:22:31.50:Sj03UQBW それな。 4,000行近くの神クラスがあらゆるクラスと相互で強力な依存関係を持っていて、さぁ!単体テストやろう! って言われても...単体って何だよ(哲学) こんな感じになる。 いやもう俺の会社やだ。泣きたいわ。 : デフォルトの名無しさん [sage] 2020/09/23(水) 19:23:12.39:cCwBtdaA どうやって21って出すん? : デフォルトの名無しさん [sage] 2020/09/23(水) 19:28:57.47:9Qi89m1Q お前は仕様を先に考えないのか? 先にどうなるか答えは決まってるだろ : デフォルトの名無しさん [sage] 2020/09/23(水) 19:29:13.20:9Qi89m1Q へのレス : デフォルトの名無しさん [sage] 2020/09/23(水) 19:32:38.82:cCwBtdaA エクセルとかで予め計算しておいた値と比較するんだろ? 俺とやってること変わんなくね? : デフォルトの名無しさん [sage] 2020/09/23(水) 19:35:59.63:cCwBtdaA 別で書いた計算式と本処理を比較するって点は一緒じゃん それがエクセルでも処理言語でもやってることに違いなくね? : デフォルトの名無しさん [sage] 2020/09/23(水) 19:37:36.63:9Qi89m1Q テストは、あらかじめわかっている答えと比較することなんですが? あらかじめわかってるはずの答えを計算するなという話をしてる その計算ロジックにバグがあったら、テスト(比較)で失敗したとしても 正しい値がなにかわからんだろ : デフォルトの名無しさん [sage] 2020/09/23(水) 19:38:38.76:cCwBtdaA だからどうやって21出すんだよって聞いてんじゃん 何言ってるのかわからないの? : デフォルトの名無しさん [sage] 2020/09/23(水) 19:42:40.76:9Qi89m1Q 自分で仕様を考えたこと無いのか? 1,2,3,4,5,6を与えたら21になる関数を作るんだろ 21をだすなら電卓でもなんでも使えよ 電卓が不安なら色んな方法を使って21が正しいと 確信もてるまで努力しろよ そして21と比較するだろうが、21と比較する場面で 計算式を使ったら今度はその計算式が正しいかを 努力するしかなくなるだろうーが それこそ意味がない : デフォルトの名無しさん [sage] 2020/09/23(水) 19:48:02.82:cCwBtdaA だからエクセルだか、電卓だか、別で計算した値と比較するだけで どっちが正しいかなんてわかんねんだろお前w : デフォルトの名無しさん [sage] 2020/09/23(水) 19:53:07.37:9Qi89m1Q どっちが正しいかわからないから 計算式を書くなと言ってる 両方が同じ計算式だったら間違っていてもわからんだろ 片方が固定値であれば、こちらが正しい値であると考えてることがわかる : デフォルトの名無しさん [sage] 2020/09/23(水) 19:55:55.85:cCwBtdaA 大して違いないってw だったらログでも出して変数にしときなよ : デフォルトの名無しさん [sage] 2020/09/23(水) 19:57:05.25:9Qi89m1Q ログ出してどうするんだ? 何が正しいかどうかをどうやって確かめるんだw : デフォルトの名無しさん [sage] 2020/09/23(水) 19:58:00.53:9Qi89m1Q テストはロジック(関数)と固定値を比較することでやるという 基本的なことも知らないやつが居るとはなw : デフォルトの名無しさん [sage] 2020/09/23(水) 20:00:49.03:cCwBtdaA 固定値が欲しいんだろ? だからログでも出せばいいじゃんってこと 結局さ やってることは1つの仕様に対して2つ処理書いてその値を比べてるだけ 別にテストコードに書いた値や処理のが正しい根拠もないし 本処理のが不出来である根拠もないでしょ : デフォルトの名無しさん [sage] 2020/09/23(水) 20:03:50.72:I97mf4gB 自動でやっても、テストコードとエビデンスのレビューをしろ、という キチガイもいる : デフォルトの名無しさん [sage] 2020/09/23(水) 20:04:30.50:cCwBtdaA 俺、この結論はどこまで行っても出ないと思うぜ どっちが正しいかなんて誰にもわからん : デフォルトの名無しさん [sage] 2020/09/23(水) 20:15:06.99:9Qi89m1Q お前はログに21と出力されているのを見て これがどうやって正しい答えだって判断するんだ? 正しい答えが21ってわからないって言ったのはお前だろw : デフォルトの名無しさん [sage] 2020/09/23(水) 20:16:03.34:9Qi89m1Q > やってることは1つの仕様に対して2つ処理書いてその値を比べてるだけ それはお前がやってる無意味なことですよね?w そんな無意味なことはしないで、 1つの処理と1つの正しい答えを比べろって 俺は言った : デフォルトの名無しさん [sage] 2020/09/23(水) 20:17:23.00:cCwBtdaA テストと言いつつできるのは計算過程と処理結果を残すだけだと思ってるよ俺は 長年考えた結果 正しい値なんてのは実は物理的に誰も知りえないということを理解した なのでテストで重視するのは俺は組んだコードのエビデンスの方 どんな処理書いてどんなログ出したか 自動テストは結局同じやつが作ってる以上同じ不具合入ってるだろうなって思ってるw : デフォルトの名無しさん [sage] 2020/09/23(水) 20:22:00.58:9Qi89m1Q > テストと言いつつできるのは計算過程と処理結果を残すだけだと思ってるよ俺は 処理結果を残すだけというのは 間違った処理結果を残していてもいいって話ですか?w そうですね。お前はログ取るまでで そのログを見るのは他の人ですもんね(笑) こいつに、盗まれないように見ててって言ったら 盗まれました。ちゃんと見てました。って言いそうw : デフォルトの名無しさん [sage] 2020/09/23(水) 20:28:09.64:cCwBtdaA うん だってさっきの21みたいにどこまで突き詰めたって 同じ仕様に対して別で2つ処理書いて比較してるだけだもの んでこれを同じやつがやってる以上こんなところに金なんかかけるだけ無駄 : デフォルトの名無しさん [sage] 2020/09/23(水) 20:35:36.21:9Qi89m1Q 論点がずれてるね。 お前はログを見て21であることを知って あとからこの21は正しいのだろうか?と考えて判断すると言ってる。 どうやって21が正しいか判断するの?w 俺は、最初に21が正しいと確信を持ってコードに書いてると言ってる。 だからお前がやってるログを取るだとかログを見るだとかいう無駄な作業がいらない : デフォルトの名無しさん [sage] 2020/09/23(水) 21:34:22.05:O1ICXtuo 世の中にはテストケース1個作ることすらできない人もいるんだな これは驚いた : デフォルトの名無しさん [sage] 2020/09/23(水) 21:58:03.76:cCwBtdaA 確信ってw 無理なこと言うなよw お前が本処理に書いたA+B+C+D+E+Fも 21を出すために書いたA+B+C+D+E+Fも どっちも胡散臭ぇんだよw こんな簡単なことがわからねーのかよ : デフォルトの名無しさん [sage] 2020/09/23(水) 21:58:08.70:9Qi89m1Q ある関数を作ったその関数は 1, 2, 3 という引数を与えると3421という値がログに出力された 「これが書いたコードにバグなんてあるはずがない。3421は正しい計算結果だ。」 そういってログを取れば十分とつぶやいた : デフォルトの名無しさん [sage] 2020/09/23(水) 21:59:03.06:9Qi89m1Q 俺はそんなコード書いてないが? こんな簡単なことがわからねーのかよw IDも確認できねーのかよw : デフォルトの名無しさん [sage] 2020/09/24(木) 02:54:46.05:2iTMkqwR え?じゃあどうやって21出したん? : デフォルトの名無しさん [sage] 2020/09/24(木) 08:29:50.90:o9SDcriM んなプログラマーってどうやって仕事をしてんだろう? : デフォルトの名無しさん [sage] 2020/09/24(木) 09:17:28.17:27/WCIy4 あのな、ソフトウェアの開発っていうのは ○○を入れたら○○になる関数が欲しい! という考えの連鎖で作っていくんだよ お前は誰かから課題を与えられるんだろうけどな 自分で考えて作るってことしたことないでしょ : デフォルトの名無しさん [] 2020/09/24(木) 10:23:36.26:ZK3wgiUi 作って終わりのシステムだったら手動でも問題ないと思う Sierのユーザはテストのエビデンスを欲しがる人が多いから エビデンスは納品物として残さないといけない 開発者よりもユーザ側の事情が大きいのじゃないかな : デフォルトの名無しさん [sage] 2020/09/24(木) 10:28:05.64:27/WCIy4 客「正しく動いているというエビデンスが欲しい」 SI「正しく動いてるかどうかなんてどうやって証明したらいいかしらん テストやったというスクショ用意すりゃいいんじゃないか?」 これ : デフォルトの名無しさん [sage] 2020/09/24(木) 10:41:05.69:2iTMkqwR そうそう、結局こういう入力(ユーザによる操作や設定ファイルも含む)に対してこう動くようにしましたよ としか言えない だからエビデンスが重要だって言ってんじゃん 21が正解かどうかは誰にもわからないんだよ もっと複雑な計算で客も式は知ってるけど 実際に計算した値はわからんようなのだったらどうやって出すよ? PG「大丈夫、エクセルで数式でこのように出した値と一致しています!」 客「は?なんでそれが正しいの?」 PG「え?」 みたいになるやつはここの理解が足りない どこまで突き詰めても究極的にはわからない わからないものを説明しなければならない : デフォルトの名無しさん [sage] 2020/09/24(木) 10:45:22.65:27/WCIy4 > 21が正解かどうかは誰にもわからないんだよ じゃあログ出す意味ないじゃんw どうせ文字化け出力してても正解かどうかわからないだろ : デフォルトの名無しさん [sage] 2020/09/24(木) 10:47:21.97:27/WCIy4 > もっと複雑な計算で客も式は知ってるけど > 実際に計算した値はわからんようなのだったらどうやって出すよ? 計算式は神が作り出したものとか、いきなり湧いて出てきたって思ってそうw 高校レベルの数学はそうだね。計算式は覚えるもの だけどな、本当は計算式っていうのは、ある値を出したいと思って 「計算式を作る」ものなんだよ。作るのは計算式。それがコード : デフォルトの名無しさん [sage] 2020/09/24(木) 10:51:24.16:27/WCIy4 ゲームの当たり判定でも、あれとこれがぶつかったのは どう計算すれば導き出されるんだ?って悩んで ぶつかったという答えを出す計算式を作り出すものなんだが 本を読んで計算式をみて、ぶつかったかどうか? この計算式を使えばぶつかったという答えが出るんだよ みたいに思ってるんだろう。 自分でアルゴリズムを考えたことがないから 計算式ググって、そのとおり計算して なるほど、これが計算した答えか。 答えなんて計算しないとわからんな。と言ってる 計算式を作り出したことがない : デフォルトの名無しさん [sage] 2020/09/24(木) 11:29:14.71:2iTMkqwR フフフ、雑魚の遠吠えが心地いいなw : デフォルトの名無しさん [sage] 2020/09/24(木) 11:30:08.73:7nzCtSCV 内部にジェネレータとかIOとかを持ってて、冪等じゃない関数のテストってどうやったらいいの? そういうのは単体テストの対象外? : デフォルトの名無しさん [sage] 2020/09/24(木) 12:04:18.26:27/WCIy4 1つぐらい何か言い返せよw お前がやってるそれが遠吠えじゃねーかw 冪等性がなんで出てくるのか知らんが 与えられたデータ(引数だけじゃなくてすべての状態)が 同じであればその結果も同じになる テストというのは、固定のデータを使って固定の結果と比較するもの 固定のデータが用意するのが難しいのであれば その部分にスタブ(モック)を利用する 十分、単体テストの対象内 というか単体テストができないなら、その他のテストもできないだろ : デフォルトの名無しさん [sage] 2020/09/24(木) 12:35:20.58:2iTMkqwR だからなんの意味もねーってそれ お前がエクセルで計算した値だろw : デフォルトの名無しさん [sage] 2020/09/24(木) 12:37:03.68:sW11ypIO >そうそう、結局こういう入力(ユーザによる操作や設定ファイルも含む)に対してこう動くようにしましたよ >としか言えない 考え方が間違ってる 入力に対する出力が要求仕様通りになることをこういうテストケースで確認しましたよと言えればいい 21が正解かどうかは要求仕様による テストケースを作る能力の有無の前に 要件定義がまともにできてることが必要 できてなければデスマーチ確定 : デフォルトの名無しさん [sage] 2020/09/24(木) 12:40:33.44:2iTMkqwR だからそう言ってるじゃん にそう書いてあるだろ : デフォルトの名無しさん [sage] 2020/09/24(木) 12:51:30.19:27/WCIy4 > お前がエクセルで計算した値だろw 何で計算するとかどうでもいい話だろ 何をする関数を作りたいのか? 作りたい関数は「何を入力とし、何を出力とするのか」 その仕様を決めてから関数を実装する。そして正しく実装されてるかテストする お前は仕様を決めずに、関数を実装して その関数が出力する答えが正しい!バグなんてない!って言ってんのか? 繰り返すぞ 仕様を決めてないのに関数を実装してんのか? : デフォルトの名無しさん [sage] 2020/09/24(木) 13:00:15.99:wzh1JL/V 関数なんかフィーリングでつくるだろうふつう 関数の設計?関数仕様書みたいのをいちいち書かせるタイプのアフォなんか? : デフォルトの名無しさん [sage] 2020/09/24(木) 13:08:10.28:2iTMkqwR ホントだ どうでもいいなw だからでもいいんだよな? : デフォルトの名無しさん [sage] 2020/09/24(木) 13:17:28.23:sW11ypIO 何を書いたつもりなの? : デフォルトの名無しさん [sage] 2020/09/24(木) 14:21:13.46:27/WCIy4 > だからでもいいんだよな? には固定値が書かれてないから駄目だって言ってんだろ 理解できますか? あ、そう。理解できない。 ↓こうしろって言ってるだけなのに、理解できないのか?終わってるな int S=sumAtoF(1,2,3,4,5,6); int chkS=21; if(S!=chkS) { エラー } : デフォルトの名無しさん [sage] 2020/09/24(木) 14:27:23.42:2iTMkqwR え?じゃあどうやって21って出したの? こんなの固定値のわけないじゃん : デフォルトの名無しさん [sage] 2020/09/24(木) 14:29:36.05:27/WCIy4 > え?じゃあどうやって21って出したの? 最初に関数を実装するんじゃやなくて 仕様を定義しましょうと言ってる お前は仕様を決めずにいきなり関数書いて、その関数の実行結果を出力して 俺がコードにバグを入れるなんてありえない。だから21が正しい!と言ってるだけ。 テストを全くしてない : デフォルトの名無しさん [sage] 2020/09/24(木) 14:31:27.33:2iTMkqwR それで? どうやって21を出したの? ここが品質のすべてを担保してるのにどうでもいいわけないだろアホか : デフォルトの名無しさん [sage] 2020/09/24(木) 14:35:32.71:27/WCIy4 > どうやって21を出したの? 「例:1,2,3,4,5,6を引数に渡したら21を返す関数が欲しい」 という要件 最初は関数(コード)は存在しない 最初に関数(コード)を実装してはいけない 実装した関数(コード)で出してはいけない 実装する前に決める話 どうやって21を出したの? それはその関数が欲しい人に聞け : デフォルトの名無しさん [sage] 2020/09/24(木) 14:41:24.36:2iTMkqwR ええ?A+B+C+D+E+Fなんだけど? : デフォルトの名無しさん [sage] 2020/09/24(木) 14:42:20.05:27/WCIy4 それは実装 最初に実装を書くなと何度もいわせるな : デフォルトの名無しさん [sage] 2020/09/24(木) 14:46:52.37:2iTMkqwR 今回は客がそう言ったのな : デフォルトの名無しさん [sage] 2020/09/24(木) 14:47:41.87:27/WCIy4 客はお前より頭がいいなw : デフォルトの名無しさん [sage] 2020/09/24(木) 19:32:55.83:eJ60na0U なんか荒れてんな。 単体テストって固定された仕様に対して実装者次第で変化するロジックをテストするものだろ。 例題があまりにも単純コードだからロジックと実装が一致するなんて現象が起きるのであって、考え方はテスト仕様を満たしているかどうかが重要。 だと思うんだぜ。 : デフォルトの名無しさん [sage] 2020/09/24(木) 19:36:00.81:eJ60na0U > 例題があまりにも単純コードだからロジックと実装が一致するなんて現象が起きるのであって、 ロジック(実装内容)とテストコードの間違い : デフォルトの名無しさん [sage] 2020/09/24(木) 19:42:58.77:4CFVaDi9 そこじゃないよ。 あのアホは「足し算をすることで21になるかどうかわからない」から コードを書いてそのコードの出力ログで21とでたからOKOK。 21になるかどうかわからないけどログにそう出てるからOKOKって言ってるわけだから : デフォルトの名無しさん [sage] 2020/09/24(木) 19:44:47.63:4CFVaDi9 仕様からロジックを作り出すことができなくて、 ロジックを与えられて、そのロジックをコードで書いてるだけの人間なんでしょう コーダーってやつ : デフォルトの名無しさん [sage] 2020/09/24(木) 19:57:39.46:2iTMkqwR ほう、それじゃ君はどうやって21を出すんだい? 偉そうなこと言ってるんだから誰もが納得できる解答をもっているんだよね? : デフォルトの名無しさん [sage] 2020/09/24(木) 20:02:12.92:5Fx1JvjP 納得できてないの、お前だけみたいだぞ。 キョロキョロ見回してみなw : デフォルトの名無しさん [sage] 2020/09/24(木) 20:05:10.45:2iTMkqwR ちなみに俺は答えを持っているぜ お前ら雑魚といっしょにするな お前らは正しいかどうかわからない自動テスト(笑)をずっと動かしていればいいよ : デフォルトの名無しさん [sage] 2020/09/24(木) 20:23:16.24:MX/I4ATg なんだかなぁ...。 sumAtoFって名前からして引数のAからFを足したやつを吐き出すのが仕様なんだろ? じゃあ、その仕様に合ったテストコードを書けばいいじゃん。 って話なのだが...まぁ、それ以前に、だ。 うん?単体テストをする上でテスト対象のメソッドの仕様がわかりませんってやばくね? : デフォルトの名無しさん [sage] 2020/09/24(木) 20:50:51.14:4CFVaDi9 テストコードを書くには、関数の計算結果がわかっていなければいけない だが関数を実装しなければ、計算結果は求められない 関数を実装するまで、計算結果はわからない などと言ってるやつだからなぁ どうしようもないよw : デフォルトの名無しさん [sage] 2020/09/24(木) 20:51:48.12:4CFVaDi9 ほう、それじゃ君はどうやってログに21がでてて安心するんだい? : デフォルトの名無しさん [] 2020/09/24(木) 21:04:31.28:4CFVaDi9 アホの相手飽きたから質問w BDDとTDDとATDD について 調べてみるとBDDは受け入れテストのような説明がされていて これってATDD(Acceptance Test Driven Development)のことだと思うだけど ・・・正確に言えば受け入れテスト駆動開発と言うべきか・・・はいいとして、 でもrspecってBDDと名乗っているけど、どうてみてATDDではないように思えるんだよな 開発者のためのテストが主だし。 cucumberは明らかに受け入れテストだと思う。rspecにturnipを組み合わせても 受け入れテストになると思う。でも素のrspecはBDD(ATDD)ではなくTDDだと思う さらにググるとBDDを取り入れたTDDと書いてあるのも見つけた rspecってBDDを名乗ってるけど正確な言い方ではないってことなのか? さらにrspecの言うBDDと同じ意味で使ってるテストフレームワークが多い気がするけど 最初から受け入れテストとして作られたものは本来(?)の意味こそがBDDだみたいな感じで BDDという用語を使ってる気がする という認識はあってる? : デフォルトの名無しさん [sage] 2020/09/24(木) 21:33:03.21:4CFVaDi9 和田さんのいう「誰のためのテストか」っていうのが これらの用語の使い分けとして一番しっくり来るんだよな ただこういう観点で使い分けられてないという事実があるわけで困る : デフォルトの名無しさん [sage] 2020/09/24(木) 21:35:44.19:4CFVaDi9 ttp://https://www.slideshare.net/nowsprinting/bdd-33testing Scenario BDDとかSpec BDDとかいう用語が出てきたw : デフォルトの名無しさん [sage] 2020/09/24(木) 21:35:55.23:80+YcRw8 BDD は、rspec, jest みたいに、describe, it を使うもの : デフォルトの名無しさん [sage] 2020/09/24(木) 21:43:19.82:4CFVaDi9 俺もそう思っていたんだが、どうも違うんだよな 人それぞれで言ってる意味が微妙に異なってる たぶん、この意見は正解。2つの意味がある。 ttp://https://ukstudio.jp/posts/2011/07/02/bdd/ > BDDにはふたつの種類がある > 1. TDDの言い換えのBDD(開発寄り) > 2. ATDD(受け入れテスト)でのBDD(ユーザ寄り) 2つの意味があるのは、まあよくある話なんだけど 1.界隈では何の説明もなくBDDはTDDの言い換えとして使っており 2.界隈では何の説明もなくBDDはATDD前提で語っており 各解説を見ると、この2つの種類がまるでなかったような書き方がされてる それぞれの専門家は、どちらかの用語として使っていて こういうそれほど有名でない人だけが違いに気づいているという感じがする あ、和田さんは有名だけどねw : デフォルトの名無しさん [sage] 2020/09/24(木) 21:49:49.61:4CFVaDi9 BDDはTDDの言い換えとして広まっちゃってるけど BDDのオリジナルは多分受け入れテストの方だと思う だからrspecのBDDは本来のBDDではない!と専門家が批判記事でも 出していればまだ良かったんだけど、それがないから困惑してる rspecがBDDを名乗っており誰も批判してないからrspecはBDDである。 それを真似たjestなどもBDDである。共通する特徴はdescribe, itである。 これが開発者の間で広まってる認識・・・だと思うんだけど受け入れテスト業界では rspecのBDDを否定せずに、それでいてBDDはATDDであるという前提で語るから困る ちなみにATDDっていうのはcucumberみたいなものね : 77 [sage] 2020/09/25(金) 00:42:40.39:mGml3uVc RSpec と言えば、ソニックガーデンの伊藤淳一。 Read Everyday Rails も翻訳してる 「伊藤淳一 rspec」で検索! 色々な記事を書いてる : デフォルトの名無しさん [sage] 2020/09/25(金) 03:29:42.83:N+dUj7Ty > RSpec と言えば、ソニックガーデンの伊藤淳一。 その人ぐらいしかいないから名前が知られてるだけで 特別参考になることは言ってないかな 大幅に間違ってないってだけで、大多数の人と同じレベル TDDやBDDじゃなくて、 xBehaveとxSpecで検索すべきだった おそらくrspecはxSpec系と呼ぶのが適切なのだろう : 77 [sage] 2020/09/25(金) 08:24:28.60:mGml3uVc 伊藤淳一は、YouTube の動画もある 他には、Serverspec の作者、宮下剛輔もいる : デフォルトの名無しさん [sage] 2020/09/25(金) 08:25:42.75:N+dUj7Ty > 伊藤淳一は、YouTube の動画もある あれやめて欲しい せめて文字に起こせと : 77 [sage] 2020/09/25(金) 10:00:48.60:mGml3uVc Ruby のYouTube 動画で、Dean DeHart というマニアックな香具師がいる : デフォルトの名無しさん [sage] 2020/09/25(金) 12:07:26.03:0u8f+Kls テスト書き始めるとオブジェクト指向おじさんから関数型おじさんになってしまう Javaでも全部staticメソッド : デフォルトの名無しさん [sage] 2020/09/25(金) 12:34:53.67:buHis4lt ユニットテスト全く書いたことないのか?っていうレスが最初の方で飛び交っててやべーな それどころかテストケースの洗い出しとかその辺の事全く知らなそう : デフォルトの名無しさん [] 2020/09/25(金) 12:39:20.85:ycF3TYue テスターに任せるだけだから気にしなくていい : デフォルトの名無しさん [] 2020/09/25(金) 12:40:49.42:ycF3TYue なんでもかんでも自分でやろうとするな 組織は集団の力を使えるから強いんだ テストはテストの専門家に任せるべきだ : デフォルトの名無しさん [] 2020/09/25(金) 12:41:36.82:ycF3TYue 単体テストを頑張っても品質はあがらない 結合テスト、総合テストを頑張るべきだ : デフォルトの名無しさん [sage] 2020/09/25(金) 12:41:43.82:I1EnBauF 効率化しすぎたら仕事が無くなるよ : デフォルトの名無しさん [sage] 2020/09/25(金) 13:28:09.77:buHis4lt >単体テストを頑張っても品質はあがらない >結合テスト、総合テストを頑張るべきだ 単体テストの重要性を知らんのか レガシーコード三部作を買って読んで来い : デフォルトの名無しさん [sage] 2020/09/25(金) 13:43:09.13:ME9URhdt 例えばチェックする値の理論値が12.375だったとするじゃん? でも計算結果は 12.37499999999998 だったんよ お前、これどうすんの? : デフォルトの名無しさん [sage] 2020/09/25(金) 13:53:32.14:q10QaMUD 精度付きで比較する テストフレームワークがそういう機能を用意してる : デフォルトの名無しさん [sage] 2020/09/25(金) 13:59:40.89:ME9URhdt えー一個一個設定すんのー? : デフォルトの名無しさん [sage] 2020/09/25(金) 14:10:34.08:6tDTZ4vt > 結合テスト、総合テストを頑張るべきだ 手戻りが大きくて時間がかかりすぎる : デフォルトの名無しさん [sage] 2020/09/25(金) 14:11:41.28:6tDTZ4vt お前ならどうするのか言ってみ もしかしてログにでていてそれっぽい値だからOKって 目を凝らして何百個も判断するのか?w : デフォルトの名無しさん [sage] 2020/09/25(金) 14:13:18.07:ME9URhdt いや、得に仕様は出てないんでテキトーに判定して欲しいんですが : デフォルトの名無しさん [sage] 2020/09/25(金) 14:14:39.69:6tDTZ4vt テストの専門家というのは、テスト技術の専門家であって テスト作業の専門家なんていねーぞw それは単なるテスター。テスト作業してるだけで専門家じゃない ひどい場合は仕様も何も知らないやつが手動でテストしてしてたりするからな テストの効率化?人増やして人海戦術でやることだなみたいに思ってるやつ : デフォルトの名無しさん [sage] 2020/09/25(金) 14:16:02.24:6tDTZ4vt テキトーに判定って 12.37499 という間違った 計算結果になってる場合でも場合OKにするってこと? : デフォルトの名無しさん [sage] 2020/09/25(金) 14:16:55.57:q10QaMUD 一つ一つ指定しない方法もあるよ そういうのもテストフレームワークに用意されてる : デフォルトの名無しさん [sage] 2020/09/25(金) 14:17:17.38:ME9URhdt 概ね当たり感出てるじゃないですか? : デフォルトの名無しさん [sage] 2020/09/25(金) 14:18:58.91:6tDTZ4vt だから、間違った計算結果でも 概ね当たり感出てるからOKにするってことですよね? って聞いてるんですが : デフォルトの名無しさん [sage] 2020/09/25(金) 14:19:54.83:ME9URhdt どんな設定よ? 0.99999999999998みたいなのを概ね1.0お判定してくれそう? : デフォルトの名無しさん [sage] 2020/09/25(金) 14:20:46.52:9rvIESf7 ビッグバンテストって今時はやらないの? : デフォルトの名無しさん [sage] 2020/09/25(金) 14:22:03.54:6tDTZ4vt > 0.99999999999998みたいなのを概ね1.0お判定してくれそう? 0.99999999999998 を 概ね1.0と判定してほしいの? 0.9999999999998 だった場合は? 0.999999999998 だった場合は? 0.99999999998 だった場合は? 0.9999999998 だった場合は? 0.999999998 だった場合は? 0.99999998 だった場合は? 0.9999998 だった場合は? 0.999998 だった場合は? 0.99998 だった場合は? 0.9998 だった場合は? 0.998 だった場合は? 0.98 だった場合は? : デフォルトの名無しさん [sage] 2020/09/25(金) 14:23:23.64:ME9URhdt 一番下は最悪だなw : デフォルトの名無しさん [sage] 2020/09/25(金) 14:24:39.14:ME9URhdt 概ね当たり感わかんねーんだよな自動テスト作ってるやつバカだから : デフォルトの名無しさん [sage] 2020/09/25(金) 14:25:43.16:6tDTZ4vt 下から2番目は? 下から3番目は? 下から4番目は? 下から5番目は? 下から6番目は? 下から7番目は? 下から8番目は? 下から9番目は? 下から10番目は? 下から11番目は? 下から12番目は? 複数質問してるんだから全部答えてよw : デフォルトの名無しさん [sage] 2020/09/25(金) 14:25:50.55:buHis4lt >いや、得に仕様は出てないんでテキトーに判定して欲しいんですが そういう曖昧な仕様だからバグに繋がるんだろうがwwwwwwwwwww 特に浮動小数点の計算なんてよくバグに繋がるから仕様はっきり決めてテストしなきゃダメだろ 桁数どうするかとかね あと数値系のテストってそこまでパターン無いぞ ・一般的な正常値 ・境界値 ・最大値/最小値 ・異常系(メソッドの仕様によって変わる、nullとか空白とか) テストフレームワークには網羅的なテストデータの投入と判定を一気にやってくれるし それぞれでテストコードを書く必要はないぜ : デフォルトの名無しさん [sage] 2020/09/25(金) 14:26:19.14:6tDTZ4vt > 概ね当たり感わかんねーんだよな自動テスト作ってるやつバカだから お前にその概ね当たり感を聞いてるのに、その質問に答えられないお前はバカってことになるよ : デフォルトの名無しさん [sage] 2020/09/25(金) 14:27:41.32:6tDTZ4vt 消費税計算で1円ずれてても概ねおっけー♪ トランザクションが1万件あっても1万円しかずれなーい とかいいそうなんだよなw : デフォルトの名無しさん [sage] 2020/09/25(金) 14:29:30.05:ME9URhdt やっぱり自動テストは駄目だな : デフォルトの名無しさん [sage] 2020/09/25(金) 14:29:41.05:cdg8K9Zm 浮動小数点の計算するなら許容誤差ぐらいは理解してからやれよ… : デフォルトの名無しさん [sage] 2020/09/25(金) 14:30:27.43:6tDTZ4vt 質問に答えられなかったという結末で良いね : デフォルトの名無しさん [sage] 2020/09/25(金) 14:33:10.23:buHis4lt というか「概ねオッケー」っていう考え方ってプログラミングだとめちゃくちゃ危険だからな α版とか仕様の仮決め段階だったらまだいいけど、正式リリースの時までその状態にしておくと 絶対にそこ起因のバグか仕様か分からん動きが発生してトラブルになって揉める 当時の議事録とか仕様書の調査に入って悲惨な惨状になるのが良く見える : デフォルトの名無しさん [sage] 2020/09/25(金) 14:33:13.10:ME9URhdt いや仕様が出てれば有効桁数いくつか指定すればいいけど 計算式しか出てないやつは直前の複雑な計算に引っ張られてる感しかないんだよなぁ : デフォルトの名無しさん [sage] 2020/09/25(金) 14:37:20.82:buHis4lt python辺りのユニットテストフレームワークだと丸め桁まで指定できるから それで満足する? ttp://https://docs.python.org/ja/3/library/unittest.html#unittest.TestCase.assertAlmostEqual : デフォルトの名無しさん [sage] 2020/09/25(金) 14:38:08.40:cdg8K9Zm 引っ張られるとかイミフなこと言われても… : デフォルトの名無しさん [] 2020/09/25(金) 14:38:09.18:ycF3TYue 単体テスト用意してるから実装がグダグダになるんやで 実装に集中しろ : デフォルトの名無しさん [sage] 2020/09/25(金) 14:40:29.77:ME9URhdt いや、突っ込んだ引数と理論値から有効桁数勝手に判断しろ 人間ならできる : デフォルトの名無しさん [sage] 2020/09/25(金) 14:40:44.40:buHis4lt >単体テスト用意してるから実装がグダグダになるんやで >実装に集中しろ そうやって場当たり的な実装になるから クソみたいなコードが量産されるんだろうが…… : デフォルトの名無しさん [] 2020/09/25(金) 14:41:04.05:ycF3TYue 単体テストに時間割く方が危険 IDEや静的解析があるから単体試験で見つかるようなコーディングミスは ほとんどない、むしろバグの多くは仕様に対する認識不足によるものが多い 結合、総合テストを重視したが良い : デフォルトの名無しさん [] 2020/09/25(金) 14:41:45.39:ycF3TYue んなこたーない、単体テストもコードの一部だからバグ増やすだけ : デフォルトの名無しさん [sage] 2020/09/25(金) 14:42:28.28:buHis4lt >いや、突っ込んだ引数と理論値から有効桁数勝手に判断しろ >人間ならできる あのそれ、テストした人によって合格の成否が変わりかねないっていう テストとして一番あり得ない事なんだけど理解してる? : デフォルトの名無しさん [] 2020/09/25(金) 14:42:30.10:ycF3TYue 7Payもドコモ口座も単体テストはちゃんとできてただろw 総合テストを軽視した結果があれ : デフォルトの名無しさん [sage] 2020/09/25(金) 14:43:15.68:ME9URhdt だって値2000個以上あるし : デフォルトの名無しさん [] 2020/09/25(金) 14:43:24.31:ycF3TYue 単体テストはプログラマの自己満、システムの品質をあげないどころか 結合、総合テストの時間を減らしてシステムの品質下げることになってる : デフォルトの名無しさん [sage] 2020/09/25(金) 14:44:14.77:qv4TcM/Q まーた、仕様を理解しないままテストするとかほざく単体テストを理解してない馬鹿が湧いたのか。 いい加減にしろや。 : デフォルトの名無しさん [sage] 2020/09/25(金) 14:45:09.32:buHis4lt そういう意味で大変って思ってるなら テストデータ流すして結果が出た後、 その桁数からparseで指定する桁数を決めてから判定すりゃ良い : デフォルトの名無しさん [sage] 2020/09/25(金) 14:45:31.29:ME9URhdt 2000個どころじゃねーな 変数30個ぐらいのクラス200個以上あるもんな 一個一個有効桁数の設定なんかしてらんねーよ : デフォルトの名無しさん [] 2020/09/25(金) 14:46:13.92:ycF3TYue 単体テストは自己満、リファクタリングは時間の無駄 : デフォルトの名無しさん [sage] 2020/09/25(金) 14:48:43.20:buHis4lt >単体テストに時間割く方が危険 >IDEや静的解析があるから単体試験で見つかるようなコーディングミスは >ほとんどない、むしろバグの多くは仕様に対する認識不足によるものが多い >結合、総合テストを重視したが良い は……? いやいやお前は単体テストをなんだと思ってるん? そんなショボい事になんか使わんぞ 仕様を関数レベルにまで落としこんで、その振舞が正しいかを見るのに使うんだぞ むしろ仕様認識不足がバグの原因っていうなら、それこそ単体テスト書かなきゃダメだぞ 特に仕様変更とかでコード修正入れたら回帰テストする必要があるから 単体テストが無いと修正前の担保とれんやん、やべーやつだなお前 : デフォルトの名無しさん [sage] 2020/09/25(金) 14:51:51.39:qv4TcM/Q たしかに単体テストすらできないゴミプログラマーがするリファクタリングは虚無だわな。 まともに設計できないだろうし。 : デフォルトの名無しさん [sage] 2020/09/25(金) 14:53:14.71:ME9URhdt 時間がかかるのでメソッド単位の出力値のテストはなかったことにします : デフォルトの名無しさん [sage] 2020/09/25(金) 14:53:57.34:q10QaMUD あれはテストの問題じゃなく仕様の問題 それも仕様のリスクは精査されてたが意思決定者がそのリスクを軽視しただけ よくある話 : デフォルトの名無しさん [sage] 2020/09/25(金) 14:54:34.63:buHis4lt 単体テストとかTDDとか全く分からんなら この動画が一番参考になるから見ておけ ttp://https://www.youtube.com/watch?v=Q-FJ3XmFlT8&list=WL&index=4&ab_channel=TDDBC-Online そもそもリファクタリングって単体テスト有りきじゃね? コードが悲惨すぎて単体テストの実装すら困難って時には リファクタリング→単体テスト→リファクタリング→再テストっていう流れになるけど 基本的には現行動作を保証するために単体テスト実装→リファクタリング→再テストが基本だし : デフォルトの名無しさん [] 2020/09/25(金) 14:56:10.10:ycF3TYue 単体w 単体で仕様確認する暇あったら結合、総合で確認しろよw 単体で仕様確認できると思ってる方がやべーわwwww テスラのロケット知ってるか? 部品のテスト頑張ったらロケットが飛ぶと思ってそうだなお前 : デフォルトの名無しさん [] 2020/09/25(金) 14:57:19.88:ycF3TYue 総合テストを重視してたらその仕様の問題もはっきりわかったってことだ お前のように単体テスト頑張るやつが開発者だったんだろw よくある話だな : デフォルトの名無しさん [] 2020/09/25(金) 14:58:31.75:ycF3TYue テスラではシミュレーションをなくして実地で何回もロケット打ち上げること 繰り返して洗練させていったんだよ 単体テストやるやつは所詮ホリエモンロケットなんだよwwwww : デフォルトの名無しさん [] 2020/09/25(金) 15:00:33.39:ycF3TYue 単体テストとリファクタリングを重視していたのは15年前〜8年前まで 日進月歩で進化するシステム開発の現在の常識は単体テストとリファクタリングを禁止する方向 : デフォルトの名無しさん [sage] 2020/09/25(金) 15:02:31.40:qv4TcM/Q 俺の発言は皮肉で言っただけだから、あまり気にせんでくれ。 俺があげたのはまさに、コードが悲惨すぎて単体テストができない例。そういう人達の頭の中では単体テストって無意味なんだろうな(遠い目) って皮肉だから深い意味はない。 : デフォルトの名無しさん [] 2020/09/25(金) 15:02:39.27:ycF3TYue TDDはプログラミング界のマナー講師だからなwwww ありもしない偽の常識でっち上げて自分が日銭稼ぐのを目的にやってるだけだから : デフォルトの名無しさん [sage] 2020/09/25(金) 15:10:55.77:buHis4lt あのな? 単体テスト、結合テスト、総合テストもどれも重要なんだよ で、単体テストで扱けるものは結合テスト、総合テストでもこけるんだよ 単体テストで拾えるレベルのものを何度も時間と手間かけて結合・総合テストやる方が気が狂ってるわ >日進月歩で進化するシステム開発の現在の常識は単体テストとリファクタリングを禁止する方向 で、どこの奴が言ってるの? 常識って言うなら少なくとも本ぐらいは出てるよねー? あ、ファクタリングと単体テストの重要性は大体この辺の本に載ってるぞ ・リーダブルコード ・リファクタリング 既存のコードを安全に改善する(第2版) ・ベタープログラマ ・テスト駆動開発 ・レガシーコード改善ガイド ・レガシーソフトウェア改善ガイド ・レガシーコードからの脱却 : デフォルトの名無しさん [sage] 2020/09/25(金) 15:15:51.85:+2VBuIVO お前が一番マナー講師臭がプンプンするぞw しかも説明のしかたに説得力がないからかなり質の低い部類の講師だな : デフォルトの名無しさん [] 2020/09/25(金) 15:18:53.29:ycF3TYue ほらねw その本全部15年前〜8年前のものだよw : デフォルトの名無しさん [] 2020/09/25(金) 15:19:34.29:ycF3TYue 最新情報をキャッチアップできてない いま単体テストが一番レガシー : デフォルトの名無しさん [sage] 2020/09/25(金) 15:20:01.58:cdg8K9Zm 2000個全部有効桁数違うのか? まあありえねーとは言わんけど残念な仕様やねw : デフォルトの名無しさん [sage] 2020/09/25(金) 15:21:44.53:cdg8K9Zm で、お前のとんでも理論が載ってるホン早く出せよw ネットでもいいぞ : デフォルトの名無しさん [] 2020/09/25(金) 15:23:07.74:ycF3TYue 企業では普通に行われているよ 一般に漏れ出るのはだいたい10年後くらいじゃないかな : デフォルトの名無しさん [] 2020/09/25(金) 15:23:34.37:ycF3TYue 10年前の本読んでる時点で時代遅れだからwwwww : デフォルトの名無しさん [sage] 2020/09/25(金) 15:24:18.42:qv4TcM/Q 自演?流石にこのスレにここまで頭のおかしい人が二人もいたらびびるのだが。 妄想乙 : デフォルトの名無しさん [sage] 2020/09/25(金) 15:24:45.74:6tDTZ4vt いや、突っ込んだ引数と理論値から有効桁数勝手に判断してテストすればいいじゃんw : デフォルトの名無しさん [] 2020/09/25(金) 15:25:43.03:ycF3TYue C10K問題ってしってる? あれも企業では当たり前の問題として知られていて とっくに解決策もわかってたんだけど、それが世に出て一般に知られて本がでたのは10年後だった 技術の最先端は常に企業にある : デフォルトの名無しさん [sage] 2020/09/25(金) 15:25:49.93:buHis4lt ・リーダブルコード:2012/6/23 ・リファクタリング 既存のコードを安全に改善する(第2版):2019/11/29(第1版:2014/7/25) ・ベタープログラマ:2017/12/15 ・テスト駆動開発:2017/10/13 ・レガシーコード改善ガイド:2009/7/13 ・レガシーソフトウェア改善ガイド:2016/11/10 ・レガシーコードからの脱却:2019/9/19 流石にちょっとぐらいググろうぜ? 古い本から新しい本までバランスよく混ぜて 単体テストとリファクタリングっていう方針は10年近く前から廃れずに続いているって察してくれると思ったんだけどなー : デフォルトの名無しさん [sage] 2020/09/25(金) 15:26:18.74:6tDTZ4vt > 変数30個ぐらいのクラス200個以上あるもんな > 一個一個有効桁数の設定なんかしてらんねーよ 有効桁数の設定の意味がわからん。 例として一つだけやってみて : デフォルトの名無しさん [] 2020/09/25(金) 15:26:59.56:ycF3TYue いま10年前の本読んで実践してる人は最先端から20年遅れてるwww : デフォルトの名無しさん [sage] 2020/09/25(金) 15:27:28.03:6tDTZ4vt > 技術の最先端は常に企業にある C10K問題を解決した企業の名前言ってみ : デフォルトの名無しさん [] 2020/09/25(金) 15:28:00.08:ycF3TYue 初版の発売日調べてみ、著者が金稼ぎのために版増やしてるだけだから お前のような情弱を釣ってるだけwwww : デフォルトの名無しさん [sage] 2020/09/25(金) 15:28:59.38:6tDTZ4vt > 初版の発売日調べてみ、著者が金稼ぎのために版増やしてるだけだから 金稼げるってことは売れてるってことだよな? お前、何がいいたいの? : デフォルトの名無しさん [sage] 2020/09/25(金) 15:29:07.32:buHis4lt 全部初版の日付だよwwwwwwwww お前だけ時間おかしくね? : デフォルトの名無しさん [] 2020/09/25(金) 15:29:42.13:ycF3TYue NTT NEC 日立 富士通 IBM HP Oracle Microsoft 三井住友 GE : デフォルトの名無しさん [sage] 2020/09/25(金) 15:30:07.64:6tDTZ4vt 全部単体テストを行ってる会社か 最先端は単体テストだな : デフォルトの名無しさん [sage] 2020/09/25(金) 15:30:33.69:6tDTZ4vt 訂正 全部単体テスト"自動化"を行ってる会社か : デフォルトの名無しさん [] 2020/09/25(金) 15:30:47.76:ycF3TYue お前が見てるのは再販の日付だろバーカ これだから情弱は・・・ お前のような情弱が買うから著者は版を増やすんですねー : デフォルトの名無しさん [sage] 2020/09/25(金) 15:30:49.83:buHis4lt むしろこの流れで初版の日付書いて無かったらただのアホだぞ : デフォルトの名無しさん [sage] 2020/09/25(金) 15:31:09.98:qv4TcM/Q 話題そらすの大好きだね。OOスレ荒してた奴だらお前 : デフォルトの名無しさん [] 2020/09/25(金) 15:31:16.42:ycF3TYue 10年前までな : デフォルトの名無しさん [] 2020/09/25(金) 15:31:37.40:ycF3TYue お前誰だら : デフォルトの名無しさん [sage] 2020/09/25(金) 15:32:23.92:6tDTZ4vt 10年前にやめたという情報がないなら、お前は嘘つきってことだよ 嘘つきだね : デフォルトの名無しさん [] 2020/09/25(金) 15:32:51.75:ycF3TYue 10年前で時が止まった人間がIT業界でお仕事してるってうけるんですけどーwww : デフォルトの名無しさん [sage] 2020/09/25(金) 15:33:44.63:6tDTZ4vt 単体テストの基本 ttp://https://docs.microsoft.com/ja-jp/visualstudio/test/unit-test-basics?view=vs-2019 vs-2019、この記事は10年前に書かれたとでも言うのだろうか?w : デフォルトの名無しさん [sage] 2020/09/25(金) 15:34:17.50:6tDTZ4vt 類は友を呼ぶだけ。つまりお前とお前の周りは無能ってことだよ。 大企業は単体テストを続けてるからね : デフォルトの名無しさん [sage] 2020/09/25(金) 15:35:09.19:6tDTZ4vt テスト自動化の基本的な考え方とNTTにおける研究開発の紹介 丹野 治門 (NTT研究所) 2019年3月26日(火) ttp://http://www.jaspic.org/wordpress/wp-content/uploads/JASPIC_SPI-TwilightForum_20190326.pdf : デフォルトの名無しさん [sage] 2020/09/25(金) 15:36:22.49:buHis4lt へーアマゾンの日付が間違ってるのかーそうか知らんかったなー あ、オライリー本についてはここの発売日から取って来たからな ttp://https://www.oreilly.co.jp/index.shtml むしろ再販の日付の方が探すの面倒だろwwwwww 実際の本見ないと第何版の何時印刷か書いて無いし その後ゴリ押しは無理だろ : デフォルトの名無しさん [sage] 2020/09/25(金) 15:38:29.69:6tDTZ4vt その場のノリで嘘をつくから こうやって証拠出されて言い返せなくなるんやで 素直に逃げてれば、負けを感じることもなかったのにな(笑) : デフォルトの名無しさん [sage] 2020/09/25(金) 15:39:41.32:qv4TcM/Q 試しに聞くけど 1.カプセル化についてどう思う? 2.オブジェクト指向についてどう思う? 3.staticおじさん大好き? : デフォルトの名無しさん [sage] 2020/09/25(金) 15:42:14.53:ME9URhdt そんなの把握できてるわけ無いだろ でも設定しないとチェックはできん : デフォルトの名無しさん [sage] 2020/09/25(金) 15:43:23.18:jsxvfqFg だから1個でいいか設定とやらの例を言ってみろって : デフォルトの名無しさん [sage] 2020/09/25(金) 15:44:12.11:cdg8K9Zm ごめんね、俺5年前までHの子会社でHの仕事してたんだけど、どこでその最先端のとんでも理論を普通にやってるって? てか、企業って結構こういうものの対応遅いぞ 特に大企業は手順書とか規格とか山のように修正しないとできないし : デフォルトの名無しさん [sage] 2020/09/25(金) 15:48:21.55:ME9URhdt わからん!(ガチで) : デフォルトの名無しさん [sage] 2020/09/25(金) 15:49:17.50:jsxvfqFg え?設定なんていらない。それっぽい値がでてればOK 1円ぐらいずれててもいいやろ って言わないの?w : デフォルトの名無しさん [sage] 2020/09/25(金) 15:49:56.43:ME9URhdt いや、スタンスはそれ : デフォルトの名無しさん [sage] 2020/09/25(金) 15:51:36.06:jsxvfqFg つまり計算結果が間違っていてもOKってスタンスなんだね : デフォルトの名無しさん [sage] 2020/09/25(金) 15:53:06.59:ME9URhdt わからないが正解だな 10000個近くの変数の1つ1つは無理ゲー : デフォルトの名無しさん [sage] 2020/09/25(金) 15:53:09.88:jsxvfqFg まさかバグでOKというスタンスだったとはw : デフォルトの名無しさん [sage] 2020/09/25(金) 15:53:58.39:jsxvfqFg つまり10000個近くの銀行口座があって 1つ1つ不正送金を調べるのは無理ゲーとw : デフォルトの名無しさん [sage] 2020/09/25(金) 15:54:07.85:ME9URhdt だって有効桁数わかんねーもん : デフォルトの名無しさん [sage] 2020/09/25(金) 15:55:06.38:jsxvfqFg 仕様がわからんとか下っ端の人間か? 自分で決める立場じゃないなら、上の人に仕様もらえなw : デフォルトの名無しさん [sage] 2020/09/25(金) 15:55:31.70:cdg8K9Zm 把握もできずにコーディング? なんか勘違いしてると思うが計算式毎に有効桁数がここは6桁、ここは4桁とかってやるんじゃねーぞ 普通は最低限必要な有効桁数がちゃんと計算されてるかを確認するだけ ※ 計算式によっては例外あり : デフォルトの名無しさん [sage] 2020/09/25(金) 16:03:14.61:ME9URhdt だからよ ものによって この値はだいたいこんなもんだろってあんじゃん 3.5とか5.5ならまあそれよ でも 0.0000008596とか 0.00000052354 みたいなのが日常な変数もあんじゃん でも出力値見ればな〜んとなく まあ、あってんじゃね? ってわかるじゃん それよ : デフォルトの名無しさん [sage] 2020/09/25(金) 16:04:26.07:jsxvfqFg 今度は逃げずにレスするのか?w > 0.99999999999998みたいなのを概ね1.0お判定してくれそう? 0.99999999999998 を 概ね1.0と判定してほしいの? 0.9999999999998 だった場合は? 0.999999999998 だった場合は? 0.99999999998 だった場合は? 0.9999999998 だった場合は? 0.999999998 だった場合は? 0.99999998 だった場合は? 0.9999998 だった場合は? 0.999998 だった場合は? 0.99998 だった場合は? 0.9998 だった場合は? 0.998 だった場合は? 0.98 だった場合は? : デフォルトの名無しさん [sage] 2020/09/25(金) 16:05:29.16:ME9URhdt 自動テストはやっぱり駄目だな : デフォルトの名無しさん [sage] 2020/09/25(金) 16:06:00.90:jsxvfqFg なんでまた逃げたの? : デフォルトの名無しさん [sage] 2020/09/25(金) 16:07:33.99:ME9URhdt だって有効桁数わかんねーもん : デフォルトの名無しさん [sage] 2020/09/25(金) 16:08:32.06:jsxvfqFg わからないなら上に聞けって、仕事できないやつだなw : デフォルトの名無しさん [sage] 2020/09/25(金) 16:09:47.04:ME9URhdt 数の暴力に屈してしまうのです! 数の暴力に屈してしまうのです! : デフォルトの名無しさん [sage] 2020/09/25(金) 16:10:24.36:jsxvfqFg こいつにテストさせたら、それっぽい値なので問題ないと思いましたって答えそうw : デフォルトの名無しさん [sage] 2020/09/25(金) 16:10:36.79:buHis4lt すまん、単体テストをどういう風に想像してる? a:関数の返り値/実行結果のみを単体テストで確認する b:実装されてる全ての変数(ローカル変数/グローバル変数)の値を全部チェックする 一般的に単体テストってaしかやらんけどもしかしてbをやろうとしてる…・…? なんか変数が10000個っていうのを見ててふっと思ったから一応確認したい : デフォルトの名無しさん [sage] 2020/09/25(金) 16:12:00.00:jsxvfqFg 過去ログ見る限り計算結果をログに出して 目視で数字みてそれっぽければOKらしいよw これが単体テストだとさ : デフォルトの名無しさん [sage] 2020/09/25(金) 16:12:20.09:qv4TcM/Q (ぶっちゃけ浮動小数点数のテスト仕様を深く考えたことがなくて焦ってる自分がいる) : デフォルトの名無しさん [sage] 2020/09/25(金) 16:12:36.43:cdg8K9Zm > まあ、あってんじゃね? > ってわかるじゃん なるほど、ならいいんじゃね 俺には関係ないだろうしw : デフォルトの名無しさん [sage] 2020/09/25(金) 16:13:02.06:ME9URhdt 出力がよ ほとんどDBにぶち込む値だから メソッドの出力がほとんどチェック対象なんだよね メソッド数でいうとクラっとするけど 変数の数なら10000ぐらい : デフォルトの名無しさん [sage] 2020/09/25(金) 16:14:36.17:jsxvfqFg 補足 が言ってるのは、その10000ぐらいのメソッドを 目視で確認するのは大変だから、もうそれっぽければOKでいいじゃん という意味です。 : デフォルトの名無しさん [sage] 2020/09/25(金) 16:16:12.37:jsxvfqFg さらに補足すると 10000ぐらいのメソッドを全部自動化でテストするの大変じゃん! 目視でいいよ目視で という意味です。 : デフォルトの名無しさん [sage] 2020/09/25(金) 16:27:46.98:buHis4lt DBに書き込む値を概ねで済まそうと思ってたのか……(驚愕) バグ出た時の影響範囲がやべーぞ : デフォルトの名無しさん [sage] 2020/09/25(金) 16:31:04.20:ME9URhdt 一日一万個感謝のフィールドチェック : デフォルトの名無しさん [] 2020/09/25(金) 16:47:11.95:ycF3TYue アマゾンの日付wwww お前そんないい加減なことやってんの? 驚愕だわwww お前の単体テストもそんな感じなんだろ : デフォルトの名無しさん [] 2020/09/25(金) 16:48:16.48:ycF3TYue アマゾンの日付wwwww 出版社に電話かけて原本の初版の発売日聞いてみろ ほぼ全部20年前だから : デフォルトの名無しさん [] 2020/09/25(金) 16:48:55.91:ycF3TYue 未だに単体テストの本書いてる人はいるだろうが お前のようなただの情弱だからwwww : デフォルトの名無しさん [] 2020/09/25(金) 16:49:48.66:ycF3TYue アマゾンの日付wwwwwあかんわろてまうわwwwww : デフォルトの名無しさん [] 2020/09/25(金) 16:50:46.93:ycF3TYue 試しに逆に聞くけど君はどう思ってるの? : デフォルトの名無しさん [] 2020/09/25(金) 16:51:11.38:ycF3TYue オブジェクト指向逆にどう? : デフォルトの名無しさん [sage] 2020/09/25(金) 17:14:08.66:cdg8K9Zm 発狂したww : デフォルトの名無しさん [sage] 2020/09/25(金) 17:44:42.53:qv4TcM/Q 別に? あって当然のノウハウであり、必須すぎてどうかと問われても困る。 もしも、そこから否定する馬鹿がこのスレにいたら流石に驚く。 まぁ、そのレベルなんじゃないかって疑われてんだよお前は。 : デフォルトの名無しさん [sage] 2020/09/25(金) 18:07:06.24:buHis4lt 1時間近く考えた結果がアマゾンの日付が間違ってるとかwwwwwww いや、別に煽るのは構わんけど、原本20年前で戦うのは無茶だぞ?本当に 例えば最新のプログラミングノウハウ書かれた本、英語の原本でも良いから紹介してくれん?って言っても 自分で調べろ一転張り多分出す気無いと思ってるんだけどさ そうなると自分の主張を補完するソースというか書籍を出せないけどそれは良いのか? 「自分の主張はネットにも書籍にも載ってないけど絶対に正しいです」って言うのは多分一番人を納得させるのが難しいけど良いのか? : デフォルトの名無しさん [sage] 2020/09/25(金) 18:14:10.98:qv4TcM/Q 今更だが、ごめん。このスレタイのせいで俺のツッコミが自動化の否定に捉えられたか。 そういう意図のツッコミじゃなかったんだ。 すまぬ。 : デフォルトの名無しさん [] 2020/09/25(金) 18:53:43.46:ycF3TYue 沢尻エリカじゃんwwwwやるじゃんwwww : デフォルトの名無しさん [sage] 2020/09/25(金) 19:33:36.19:qv4TcM/Q いい加減に俺の質問に答てくれ。 お前は別スレでも、いつも都合が悪くなると質問を質問で返したり、無関係な話に話題を逸したり、どうでもいいところで揚げ足を取って相手を批判するよな。 今度はそういうの無しで頼むわ。 : デフォルトの名無しさん [] 2020/09/25(金) 19:43:14.22:ycF3TYue わかった、質問を言ってくれ : デフォルトの名無しさん [sage] 2020/09/25(金) 20:11:34.55:qv4TcM/Q 176で質問してるんだがな。 質問の仕方を変えるか。 君さ、そもそも有意義な単体テストができるコードを書ける?神クラスとか作ってない? : デフォルトの名無しさん [sage] 2020/09/25(金) 21:44:14.72:jsxvfqFg > アマゾンの日付wwwww > 出版社に電話かけて原本の初版の発売日聞いてみろ Amazon(もともとは本屋)はISBNがついている本の情報は出版社から仕入れています。 一応メインであるはずの商品データを手入力してる訳がないやろw : デフォルトの名無しさん [sage] 2020/09/26(土) 07:45:22.01:Jy/kksq4 クソみたいにピーキーなアサート入れるテストするくらいならそのままログ出力でもしろっていう 馬鹿コード書くやつはよく見るわな。 : デフォルトの名無しさん [sage] 2020/09/26(土) 08:48:44.15:U+G6yEte ピーキーなアサートの意味がよくわからんがアサートとログじゃ用途が違うからお前のアホ意見は却下で : デフォルトの名無しさん [sage] 2020/09/26(土) 09:38:16.34:QYO6nuQM そうやって揉めるなら手動+Excelでいいよねっ : デフォルトの名無しさん [sage] 2020/09/26(土) 09:43:26.94:PsGGtblM よくないが : デフォルトの名無しさん [sage] 2020/09/26(土) 10:02:50.88:VMDW0A59 アサート書いて実行したらテスト完了、エラーがあれはエラーの出たテスト箇所を知らせるでいいじゃん。 なぜログの目視に拘る。 : デフォルトの名無しさん [sage] 2020/09/26(土) 11:17:45.67:Jy/kksq4 成功したところはやってないとかイチャモンつける馬鹿だから。 全ログ流しときゃいいのよ。 馬鹿と馬鹿に挟まれながら作業するってのは大変よ。 : デフォルトの名無しさん [sage] 2020/09/26(土) 12:20:07.68:gRR2jm5z 単体テストはプログラマの自己満足だから無駄 っていう話がたまに出るけど、あれは一体何故なんだ : デフォルトの名無しさん [sage] 2020/09/26(土) 12:35:40.77:U+G6yEte 使ってない奴がわめいてるだけでしょ 自己満足だろうが修正時の安心感を捨てるとかあり得ん : デフォルトの名無しさん [] 2020/09/26(土) 13:40:52.38:IgGP+BQU コーダーの安心感のためにどれだけの人件費がかかってると思ってるんだ 経営者目線で仕事しろ : デフォルトの名無しさん [] 2020/09/26(土) 13:42:09.40:IgGP+BQU 自己満で仕事するな、テストはテストのスペシャリストにやらせろ 組織の足を引っ張ってることを自覚しろ、単体テストをいますぐやめなさい : デフォルトの名無しさん [sage] 2020/09/26(土) 13:54:57.65:83DuDYef うわぁ病的なの湧いてるなw : デフォルトの名無しさん [sage] 2020/09/26(土) 15:02:29.33:ViMVtGkb またycF3TYueかよ。いい加減、ROMってろ。 : デフォルトの名無しさん [sage] 2020/09/26(土) 15:10:55.21:U+G6yEte 経営者目線がツボるわw : デフォルトの名無しさん [sage] 2020/09/26(土) 15:36:45.48:dJRFq1YT > アサート書いて実行したらテスト完了、エラーがあれはエラーの出たテスト箇所を知らせるでいいじゃん。 > なぜログの目視に拘る。 アサート書くためには関数の戻り値が必要 だけど関数の戻り値はわからない。 計算式が難しいから、実際に関数作って実行してみないと、計算結果はわからない だから最初に関数を作る。 その計算結果がそれっぽければ、関数にバグはないとみなす。 関数にバグはないとみなしたからと言って、本当に関数にバグがないかどうかはわからない つまり計算結果が正しいと証明する方法は存在しない。 だからログを目視してそれっぽいかどうか見るしかない という理屈だそうな(笑) : デフォルトの名無しさん [sage] 2020/09/26(土) 17:24:00.70:ViMVtGkb その「それっぽい結果の判定」をテストコードとして記述すればいいのに。 そもそも、テスト仕様が不明確な時点で駄目な気がするが...そういう開発しかした事がないのかな。詳しくは本人に聞けってところか。 経営者目線で仕事をするのなら、単体テストくらいできるようになってくれ。 意味のある単体テストすらできない生産性の低い奴とか俺の会社にイラネ。 もしもテスターと詳細設計担当が別人で、単体テストができないくらいクラス間の依存強度高いクソコードを渡された側であれば許すが、クソコードを作った挙げ句、自分のクソコードを反省もせず、単体テストは無意味だとほざく奴はイラネ。 数千から数万台出荷される製品のソフトウェアや、一般公開されているライブラリに対して単体テストしてませんとか言ったら出荷や公開を止める。リスク高すぎだろ。 なんでたかが人件費のために単体テストをやめるんだよ。それすら回収できないの? 受託開発だったらそこは委託元と相談して決めることだし、自社開発だったら...ビジネスモデルが破綻してるな。 詳細設計そのものがクソでも他テストは通る恐れがある。 販売活動中に詳細設計がクソすぎて開発が止まる恐れのある製品とか怖くて売れない。 : デフォルトの名無しさん [] 2020/09/26(土) 17:31:55.87:IgGP+BQU 経営者目線で単体テストてwwwww wwwwアホすぎわろすwwwww wwwwwwwwwwwwwひぃーひぃー腹が痛いーwwwwww : デフォルトの名無しさん [] 2020/09/26(土) 17:34:09.67:IgGP+BQU 単体テスト頑張れば頑張るほど品質は下がるというのが現代のものづくりの常識なわけだが 10年前の本読んで仕事してる人とは仕事したくないなあwwwwwwwwwwwwww : デフォルトの名無しさん [sage] 2020/09/26(土) 17:34:46.62:gRR2jm5z テストのスペシャリスト(エクセルスクショパシャパシャ) 実際、テスト計画からテストの自動化含めて全部やれる人って ほとんどいない気がするか…… というよりテスト自動化すらまだ全然進んでない印象 : デフォルトの名無しさん [] 2020/09/26(土) 17:37:41.06:IgGP+BQU 自動化しなくても良い、総合テストに時間をかけたほうが製品の品質は高まる テスラのロケットもそうやって飛んだんだよ 自動化という手法にこだわってコーダーの自己満で単体テストやってるのは 所詮ホリエモンロケット止まり : デフォルトの名無しさん [] 2020/09/26(土) 17:39:16.66:IgGP+BQU 大事なのはユーザビリティでありプロダクト 細かい部品のチェックを頑張ってもどうにもならんぞ : デフォルトの名無しさん [sage] 2020/09/26(土) 17:40:41.58:yrYl4KMm ycF3TYueさんよ、マジで黙っててくれないか? お前さっきから邪魔。昨日のように逃げて大人しくしてろ。 : デフォルトの名無しさん [] 2020/09/26(土) 17:42:49.70:IgGP+BQU 単体テスト頑張って会社の売上が上がった人は単体テストのコンサルタントやってるIT業界のマナー講師くらいだろ やってることが自作自演なんだよ 日本の仕事の生産性が低いのも細かいところで頑張って全体の品質から目を背けているからだ 開発者が力を注ぐべきはプロダクトでありユーザの満足度だ わーい単体テスト自動化できたーとこれで安心だーなんていってるのはレベルが低すぎるんだよ 高卒ならそれで良いかも知れないが大卒はそんなことやっちゃダメ : デフォルトの名無しさん [] 2020/09/26(土) 17:44:24.34:IgGP+BQU 大局を見よ、戦略を練れ、竹槍にこだわって戦争に勝とうとするな : デフォルトの名無しさん [sage] 2020/09/26(土) 17:49:35.42:ViMVtGkb まぁ、自動化以前のところで詰まってる人は多いかも。 : デフォルトの名無しさん [] 2020/09/26(土) 17:51:56.67:IgGP+BQU リファクタリング、単体テストを頑張る人間は一生クリエイティブな仕事できない ユーザはネジの品質なんて気にしない、プロダクトが使いやすいかどうかが全て ユーザ目線に立って生産性の高いアジャイルな仕事を成功させるためには自己満足を捨てて 顧客満足を選ばなければいけない : デフォルトの名無しさん [] 2020/09/26(土) 17:53:25.75:IgGP+BQU 単体テストの自動化を目的に仕事してる人がいる、IT業界のマナー講師だ 嘘をバラマキ生産性を下げる原因だ、出会ったら心から軽蔑してあげよう : デフォルトの名無しさん [sage] 2020/09/26(土) 17:56:41.81:Ztx9BLyg アジャイルなのに単体テストに意義を見いだせないって終わってるな。しかも、自動化スレでこんな発言だもんな。 アジャイルという言葉を理解していなさそう。 : デフォルトの名無しさん [] 2020/09/26(土) 17:57:28.46:IgGP+BQU アジャイル == 単体テストと思ってそうwwwwwwwwww wwwwwwwwwwザ・ガラパゴスって感じwwwwwwwwwww : デフォルトの名無しさん [] 2020/09/26(土) 17:58:16.27:IgGP+BQU アジャイル == ユーザ これが本当のアジャイル ユーザが見るのは単体テストの結果じゃない、プロダクト : デフォルトの名無しさん [sage] 2020/09/26(土) 17:59:11.08:ViMVtGkb そういえば、お前、昨日220の質問で逃げてたけど、答えないの? : デフォルトの名無しさん [] 2020/09/26(土) 17:59:20.69:IgGP+BQU まともな企業で仕事してみ、総合テストを重視したほうが品質高まるねってのが常識だから : デフォルトの名無しさん [sage] 2020/09/26(土) 17:59:25.33:gRR2jm5z >日本の仕事の生産性が低いのも細かいところで頑張って全体の品質から目を背けているからだ >開発者が力を注ぐべきはプロダクトでありユーザの満足度だ なんでアジャイル開発やTDDに発展していったかっていう経緯が全然分かってないやん 単体テスト無しで各コードが密結合されたプログラムの場合、変更のコストが膨大になる(作業工数の膨大) で、プログラムっていうのは常に変化するものだ 不具合対応だけでなく、それこそユーザー要望によってコードはどんどん追加される で、そのユーザーを満足さえるためにコードを変更するって事は仕様追加だけでなくて、既存仕様の担保も同時に必要になるんだよ 密結合されたコードは修正時の影響範囲が大きく、容易に変更する事が出来ない 何より変更後の既存仕様の担保っていう点で言えば、全てを保証するためには膨大なテストが必要になる 単体テストを『ちゃんと』作ると、プログラムは自然と疎結合になっていく(なぜならそうしないとテスト自体が書けないので) 更に仕様変更後も単体テストを動かす事で、少なくとも単体テストを実装している個所については 変更前後の動きを担保する事が出来る もし抜けがあれば追加すれば良い、そうすれば次からはそこは抜け落ちない つまり最初の工数こそかかるが、リリース後の保守/仕様変更に強いプログラムが出来上がる これは長期的に見ればユーザーにも開発者にとっても大きな利点 お前はリリースした後の長期的な観点が抜け落ちてるからこそ、単体テストを軽視してるんだろ ウォーターフォール式の開発で技術者寄せ集めてでプロジェクト終わったさー解散、ってやってるような奴だなとしか思えん ……というか調べたけど、テスラのロケットがシミュレーション止めたっていう話自体全然出てこないんだが…… : デフォルトの名無しさん [sage] 2020/09/26(土) 18:02:35.17:U+G6yEte 単体テストは基本設計者がやるから 自動化環境の導入は片手間じゃなかなか難しいからうちは専任の部隊がいる 一旦入れれば次からはそんなに苦労しないんだけど最初のハードルはちょい高めやね NGしとけ : デフォルトの名無しさん [sage] 2020/09/26(土) 18:03:31.79:gRR2jm5z というかユーザーは単体テストを見ない、だから単体テストは不要 っていうのは恐ろしいほどの暴論だぞ ユーザーが必要としている領域と、開発側で必要としている領域は一致しない部分が出てくるんだから 全く理由になって無いぞ : デフォルトの名無しさん [] 2020/09/26(土) 18:46:55.40:IgGP+BQU 密結合wwww疎結合wwwwいかにも10年前の本に書いてそうなことだなwwwwww 単体テストがないから設計ができないなら設計力が足りてないわ 単体テストしてる場合じゃないプロダクトと向き合えユーザと向き合え 単体テストでパソコンと向き合ってんじゃねえwwwww : デフォルトの名無しさん [sage] 2020/09/26(土) 18:56:33.26:gRR2jm5z じゃあ単体テスト不要の根拠になるソース出して? 辺りの本が古いのであれば、当然当たらしいやつがあるんだよな? ソースが無けりゃただの妄言だぞ : デフォルトの名無しさん [sage] 2020/09/26(土) 18:57:42.94:eYWGQOJY 密結合されたコードの破壊力はヤバいね。 何がやばいかって、最悪、1から作り直しになるから。 そして、そんなコードを作る人達がリファクタリングしたり再設計させたところで同じことを繰り返すから。 俺の会社の過去最高のクソプロジェクト案件が脳裏に浮かんだよ。 まぁ、あんたの言うとおりだわな。 > ユーザーが必要としている領域と、開発側で必要としている領域は一致しない部分が出てくるんだから > 全く理由になって無いぞ 全くそのとおりだ。 : デフォルトの名無しさん [] 2020/09/26(土) 19:00:26.44:IgGP+BQU まともな会社で仕事してみ 総合テスト > 結合テスト >>>>>>>>>>>>>>>>>>> 単体テスト 品質を左右する優先度はこれ : デフォルトの名無しさん [sage] 2020/09/26(土) 19:01:22.17:eYWGQOJY 優先度の話かこれ? : デフォルトの名無しさん [] 2020/09/26(土) 19:04:32.62:IgGP+BQU 単体テストはコーダの自己満を超えられないのよ もっと広い視野でプロダクト全体を見渡さないとよいプロダクトは作れない プロダクト売るのはコーダじゃないから気にしたことないだろうけど 分析してみるとユーザの満足度に単体テストレベルの些末なことは一切関与しない : デフォルトの名無しさん [] 2020/09/26(土) 19:07:01.48:IgGP+BQU たとえカバレッジ120%であってもユーザビリティが低ければ使われない ユーザの満足度とコーダの満足度は違うもの UIを洗練させ機能を洗練させユーザが本当に求めてるのは何かと 考え続けることがプロダクトの品質を高めることに繋がる それがユーザと向き合うってこと、パソコンと向き合ってるだけじゃダメ : デフォルトの名無しさん [sage] 2020/09/26(土) 19:08:27.91:lXs6C011 ソースは明かせないが、信頼できるとある専門から聞いたという話では 単体テストをやればやるほど売上が下がることが明らかになったそうだ な?そういうことなんだよ : デフォルトの名無しさん [sage] 2020/09/26(土) 19:09:11.93:c/9EiqGf たとえカバレッジ120%であってもユーザビリティが低ければ使われない それなら たとえカバレッジ120%であってもユーザビリティを高くすればいいだけでは? : デフォルトの名無しさん [sage] 2020/09/26(土) 19:10:50.10:lhbsSr80 バカエッチ120% : デフォルトの名無しさん [] 2020/09/26(土) 19:11:23.17:IgGP+BQU 目的はユーザを満足させることであり単体テストはその手段として 使われるのだけれども単体テスト頑張ってもユーザの満足度あがらんね それはどうしてだろうプロダクトの品質があがるわけじゃないからだってのが 20年前〜10年前まで単体テストを頑張って得られた結論 いまは結合テスト、総合テストを自動化して品質を高めるのが主流 : デフォルトの名無しさん [] 2020/09/26(土) 19:12:54.99:IgGP+BQU 10年前の知識で頑張ってるお前らは俺を煽ることでどうにか今の技術を聞き出そうとしてる情けない人たち : デフォルトの名無しさん [] 2020/09/26(土) 19:14:20.17:IgGP+BQU 本を読んでPCと向き合うとことしかしてこなかったお前らの限界 ユーザと向き合うことを避けてきた根暗なコミュ障に開発の最先端は無理 : デフォルトの名無しさん [sage] 2020/09/26(土) 19:16:47.76:U2gS2HGa なんかヤベー奴沸いてるからこれ貼っとくわ。 詭弁の特徴のガイドライン 1.事実に対して仮定を持ち出す 2.ごくまれな反例をとりあげる 3.自分に有利な将来像を予想する 4.主観で決め付ける 5.資料を示さず自論が支持されていると思わせる 6.一見関係ありそうで関係ない話を始める 7.陰謀であると力説する 8.知能障害を起こす 9.自分の見解を述べずに人格批判をする 10.ありえない解決策を図る 11.レッテル貼りをする 12.決着した話を経緯を無視して蒸し返す 13.勝利宣言をする 14.細かい部分のミスを指摘し相手を無知と認識させる 15.新しい概念が全て正しいのだとミスリードする 16.全てか無かで途中を認めないか、あえて無視する 17.勝手に極論化して、結論の正当性に疑問を呈する 18.自分で話をずらしておいて、「話をずらすな」と相手を批難する 19.権威主義に陥って話を聞かなくなる : デフォルトの名無しさん [sage] 2020/09/26(土) 19:19:19.01:83DuDYef まともな会社ってどこ? お前の勤める自宅警備会社? : デフォルトの名無しさん [sage] 2020/09/26(土) 19:27:01.07:vfGHSq+F 昨日の昼間からム板に張り付いている人に言われても説得力ねぇわ。 そしてそれと同じくらい、お前の50を超えるレスに説得力ねぇわ。 ツッコミを入れる周囲の人達の発言のほうが説得力があるね。 もう少し自分を疑うことをおすすめするよ。 : デフォルトの名無しさん [sage] 2020/09/26(土) 19:29:30.83:gRR2jm5z はい、ソース無し というか単体テストすらまともに実装出来ない会社の間違いじゃないの? : デフォルトの名無しさん [sage] 2020/09/26(土) 19:36:25.98:c/9EiqGf > 目的はユーザを満足させることであり単体テストはその手段として > 使われるのだけれども単体テスト頑張ってもユーザの満足度あがらんね だから両方やればいいだけでしょ? : デフォルトの名無しさん [sage] 2020/09/26(土) 19:47:53.10:gRR2jm5z マジで無能な働き者感半端なさ過ぎて洒落にならんな>ID:IgGP+BQU あんまり煽るのは趣味じゃないが、流石にここまで酷いと思わんかった >いまは結合テスト、総合テストを自動化して品質を高めるのが主流 本当に聞きかじりばっかだなお前 結合テスト/総合テストの自動化は開発の最終盤(UI含めてほぼ構成が固まった段階)に辺りからやるもんだぞ さらに大前提として結合/総合時に自動化に耐えうるレベルでバグを潰しておく必要がある つまり、単体テストで予めて一通りの品質が担保出来てなきゃ、自動化なんざ夢のまた夢だぞ : デフォルトの名無しさん [sage] 2020/09/26(土) 19:50:00.49:vfGHSq+F > 目的はユーザーを満足させることであり単体テストはその手段として使われるのだけれど 最終的にはそうなるかもしれないが、あくまでも単体テストの目的は詳細設計の妥当性確認では? お前、のツッコミをミスリードしてないかw? 時代遅れとか以前に、単体テストが何を目的とするのかすらわかってないじゃん。 の言うとおり、両方やればいいだけだよ。そして、両方やる必要がある時点で他のテストとは目的が違うんだよ?理解してる? : デフォルトの名無しさん [sage] 2020/09/26(土) 19:56:28.25:gRR2jm5z 更に言うと、実行時間って言う面においては自動化を含めても 単体テスト>>結合テスト>>>>>総合テストっていう絶対に崩せない不等式がある (総合テストはseleniu辺りを使ったものを自動化を想定してる) 単体テストはフィードバック速度が段違いに早いんだよ、だからアジャイル開発やTDDにおいても重要なファクターとなる あとずーーーーーーと引っかかってたんだけどさ 単体テスト、結合テスト、総合テストは仕様通りに動くかどうかであって、ユーザー満足度とは何も関係無いぞ 仕様通る作成できている=ユーザーも大満足する、にならないからウォーターフォールだとダメって風潮になってるんやん (ユーザーの声が最後の最後にしか出てこないから、フィードバックを反映するのが困難なため) ユーザーが満足するか、使いやすいかっていう判断をするのはユーザービリティテストっていう 評価観点が全く異なるテストを実施しないといかんのだぞ 流石に二日待っても『ユーザービリティテスト』って言葉が一回も出てこないから本気で心配してるんだぞこっちは : デフォルトの名無しさん [] 2020/09/26(土) 20:25:28.70:IgGP+BQU 結合テストの段階でユーザも巻き込んでやるだろ お前のとこやってないの? それアジャイルじゃないよ ただのウォーターフォールだよ、どうりで単体テスト重視してるわけだわな ユーザと会うことさえない下っ端仕事しかしてないんだろ : デフォルトの名無しさん [] 2020/09/26(土) 20:26:11.04:IgGP+BQU アジャイルとはユーザと一体化して共同でプロダクトを作り上げるものだ : デフォルトの名無しさん [] 2020/09/26(土) 20:28:00.00:IgGP+BQU パソコンと向き合ってれば良い仕事って気楽でいいなwwww プロダクトの品質気にしなくていいし顧客満足も気にしなくて良いもんな うらやましいわwwwwww : デフォルトの名無しさん [] 2020/09/26(土) 20:28:37.08:IgGP+BQU 10年前の本実践してイキってれば良いもんなwwwwwwwほんまええなーwwwwww : デフォルトの名無しさん [sage] 2020/09/26(土) 20:31:50.54:vfGHSq+F こんなにム板の住人多数から集中砲火を受けてもレスできる図太さに驚きが隠せない。 : デフォルトの名無しさん [] 2020/09/26(土) 20:34:13.35:gRR2jm5z け、結合テストにユーザーを巻き込むwwwwwwwwww ちょっと想像の斜め上どころの解答じゃなかったな アジャイル開発でもそんなクレイジーな事せんわ なんで結合テストしてない代物をユーザーと一緒にテストするなんて言うトチ狂った発想が出てくるんだよ お前の開発環境クレイジーすぎるだろ…… : デフォルトの名無しさん [] 2020/09/26(土) 20:39:19.67:IgGP+BQU アジャイルでは次の優先度でテストをやります 総合テスト > 結合テスト >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 単体テスト ちなみにお前がアジャイルやったことないのは明らかで 盛大に勘違いしてそうだから老婆心で教えてやるけど アジャイルでは総合テストを結合テストよりも先にやるからな 総合的に使い物にならないものを詳細までテストするのは時間と金の無駄だから ウォータフォールと真逆のことをやってユーザの満足度を最優先にしてプロダクトに反映する これを全体最適化と言う : デフォルトの名無しさん [] 2020/09/26(土) 20:41:43.72:IgGP+BQU ガラパゴスジャパンのものづくりにはその俯瞰的な視点が抜けてるから欧米にはまだまだ追いつけない 過去の慣習からいまだに抜け出せずに10年前の本をありがたがっている人もいるくらい残念な状況 : デフォルトの名無しさん [sage] 2020/09/26(土) 20:46:03.15:vfGHSq+F >ちなみにお前がアジャイルやったことないのは明らかで お前のことだろ。 : デフォルトの名無しさん [] 2020/09/26(土) 20:46:10.02:IgGP+BQU そう、いうなればいまだに単体テストを頑張ってるプログラマはさながらハンコ議員連盟みたいなもの 時代遅れの技術にいつまでもしがみついて進歩を遅らせてるってこと 愚鈍で低能な人間は日本の未来を暗くするだけ、ノロマの罪で逮捕して冷たい牢獄で一生を過ごして欲しいくらいだわ : デフォルトの名無しさん [sage] 2020/09/26(土) 20:49:25.23:c/9EiqGf それじゃいまだにログを目視で頑張って眺めてそれっぽい値ならOKなんて言ってるやつはどうなるの? : デフォルトの名無しさん [] 2020/09/26(土) 20:50:23.41:IgGP+BQU それはありだろ、ログは大事だ : デフォルトの名無しさん [sage] 2020/09/26(土) 20:50:49.34:c/9EiqGf 単体テスト(自動テスト)で正しい値と比較 vs 目視確認でそれっぽい値かどうかチェック って話だったの忘れたのかな?w : デフォルトの名無しさん [sage] 2020/09/26(土) 20:51:31.00:c/9EiqGf そんなことしてたらユーザビリティテストする時間なくなるやんw : デフォルトの名無しさん [] 2020/09/26(土) 20:52:18.62:IgGP+BQU 結局最後に頼れるのは人間の目だからな 何のために目が付いてるか考えろ ログを見るためだろうが : デフォルトの名無しさん [sage] 2020/09/26(土) 20:52:59.21:c/9EiqGf しかもそれっぽい値かどうかしか確認しないからバグだったとしてもわからんし 正しい答えがわからないからログに記録されているのがバグだったとしても それっぽい値ならOKにするんでしたっけ?w : デフォルトの名無しさん [sage] 2020/09/26(土) 20:53:29.46:vfGHSq+F その理屈だとプロジェクト作成時にテストコード記載場所を用意するAndroid Studioは時代遅れってことになるな。 つまり、Androidは時代遅れと。 : デフォルトの名無しさん [sage] 2020/09/26(土) 20:53:37.93:c/9EiqGf 見てどうするの? お前に見張り番頼んだら、盗まれていくのを見てましたって言いそうw : デフォルトの名無しさん [sage] 2020/09/26(土) 20:54:20.39:c/9EiqGf 訂正 ログ見てどうするの? お前に見張り番頼んだら、盗まれていくのを見てましたって言いそうw : デフォルトの名無しさん [sage] 2020/09/26(土) 20:55:00.24:nlLPMFg9 相手するなよ… : デフォルトの名無しさん [sage] 2020/09/26(土) 20:55:16.64:gRR2jm5z >総合テスト > 結合テスト >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 単体テスト はーまたソース無し IPA辺りの資料だけど、アジャイル開発の進め方見てみ? ttp://https://www.ipa.go.jp/files/000065606.pdf 9ページにはTDDを基本にするって書いてあるやろ? つまり単体テストを避けて通れないの あと先進的な設計・検証技術の適用事例報告書 2015 年度版の資料 ttp://https://www.ipa.go.jp/files/000049403.pdf ここに単体テストの有用性を検証した結果出てるぞ、15ページな それっぽい言葉で誤魔化してるつもりかもしれんが 何ども言うがソースが無いなら一切妄言と変わらんからな : デフォルトの名無しさん [sage] 2020/09/26(土) 20:56:42.78:vfGHSq+F そうするか、NG登録しよ。 荒らしとしてBANされることを祈ろう。 : デフォルトの名無しさん [sage] 2020/09/26(土) 22:22:37.23:EyP34oM1 まあ、なんとなく言うこともわからないでもない 結局、単体テストのチェック項目は言うほど明確にならないってことだな 浮動小数点の変数1つとっても厳密にやると恐ろしく時間がかかる 彼も全くなんのチェックもしないわけではないだろう ただ、リリース毎に走らせるような仕組みなんか無駄なコストだと思う もちろん動かないなんてのは言語道断だがそれは従来のテストで不十分か?と言えばそんなことはないと思う それよりは結合で出る他のモジュールとの不整合や 総合で出る使い勝手の悪さの修正などに時間をかけた方がいいと思う さらに言えばリリースしたあともユーザが使ってないような機能なんていっそ小規模な不具合があってもほっといてもいいのではないか?とは俺も思う もちろん動かないなんてのは言語道断だが 部品のテストをいくら頑張ってもロケットは飛ばないというのは正しいと思う まあ、これで悩むのは請けた仕事がそこまで判断するような広範囲な仕事だけだが : デフォルトの名無しさん [sage] 2020/09/26(土) 22:29:27.75:9iLYNIRG もしかして 自作自演? : デフォルトの名無しさん [sage] 2020/09/26(土) 22:31:40.42:en54jqZM なんじゃこのオチはwww : デフォルトの名無しさん [sage] 2020/09/26(土) 22:37:06.52:9iLYNIRG おい、ためしにlgGP+BQUは何か書き込んでみろ(原爆投下)。 : デフォルトの名無しさん [sage] 2020/09/26(土) 22:42:04.33:gRR2jm5z >結局、単体テストのチェック項目は言うほど明確にならないってことだな >浮動小数点の変数1つとっても厳密にやると恐ろしく時間がかかる 一回仕様決めてテスト書いたら 後はもう1関数辺り数秒にも満たない実行時間しか無いぞ…… つか浮動小数点のテストなんてそこれそユニットテストで良くやるやつやん : デフォルトの名無しさん [sage] 2020/09/26(土) 22:45:25.84:EyP34oM1 なんの作戦もなく単体テストの自動化を勧めてくるペテン師に引っかかってはならないというのはガチだと思う ・自動化Scriptの作成コストはでかい ・単体テストよりもうちょっと上の階層のテストの自動化の方がよくないか? ・そんなに何度も単体テストしないし ・かけたコストに対するリターンが小さそう? : デフォルトの名無しさん [] 2020/09/26(土) 22:51:11.37:IgGP+BQU まともな人が居てうれしい : デフォルトの名無しさん [sage] 2020/09/26(土) 22:51:21.53:EyP34oM1 すげー大変じゃん 仕様を定義するやつも 小数点いくつで四捨五入なのか切り捨てなのか全部考えないと でもそんなことしなくてもプログラムって動くし んでこういうのって会社で一旦やるって定義されちゃうと全部やらないといけなくなっちゃう でも大半は必要ない : デフォルトの名無しさん [sage] 2020/09/26(土) 22:57:08.42:gRR2jm5z >・自動化Scriptの作成コストはでかい それは正しいが、テスト自動化の作成/修正コストは 総合>>結合>>単体テストの関係になる (必要な構成、モジュールが総合テストに近づくほど増えて影響範囲がどうしても増えるので) >・単体テストよりもうちょっと上の階層のテストの自動化の方がよくないか? 総合/結合テストの自動化はバグを発見するのが目的ではなく 既存機能が壊れてないを確認するために使うんだぞ? 勘違いしてる人が要るかもしれんが、総合/結合テストでバグが頻発すると テストが失敗した原因の調査〜修正の作業に無視できない工数がかかるから、 作成コストが少ない単体テストが整備出来てなきゃ宝の持ち腐れだぞ >・そんなに何度も単体テストしないし それは単純にサボってるだけ 継続的デリバリーとか継続的インテグレーションっていうスタンスで立つ場合 CIツール、例えばJenkins辺りで構築する場合 ソースをコミットしたタイミングで、コード解析、自動ユニットテスト、ビルドまで一連でやるようにする だから一番動かすのはむしろ単体テストになる ttp://https://www.techmatrix.co.jp/product/cisolution/service/index.html ttp://https://tracpath.com/works/devops/continuous-integration/ >・かけたコストに対するリターンが小さそう? んな事ない 上記の例も合わせてリターンは大きい : デフォルトの名無しさん [sage] 2020/09/26(土) 23:05:35.15:en54jqZM 自演成りすましかとも思ったが本物だった 幼稚過ぎるやろ : デフォルトの名無しさん [sage] 2020/09/26(土) 23:05:47.25:EyP34oM1 自動テストは単体が一番作るの大変だと思うけどなw 結合や総合はモジュールや機材のセッティングは大変だけど 作るのは簡単やろ だってUWSCで画面のボタンをポチって押すだけやろ 少なくとも俺はそんなイメージだけど? : デフォルトの名無しさん [sage] 2020/09/26(土) 23:12:22.45:9iLYNIRG うーん、もしかして受託開発? : デフォルトの名無しさん [sage] 2020/09/26(土) 23:17:09.95:gRR2jm5z >作るのは簡単やろ >だってUWSCで画面のボタンをポチって押すだけやろ それは考えが甘すぎだわwwwwwwwwww それだと操作しかしてないやん UI周りの自動テストを実装する場合 ・テストシナリオ(どういう操作をするのか) ・テストの判定基準 (想定通りの画面に遷移しているのか、表示されるメッセージが正しいか、データ登録が絡むならその結果も正しいのかなど) ・テスト結果の判別方法 (これはテストシナリオによって変わってくる、登録データをそのまま引っ張り出すならDB接続して想定値との乖離が無いかチェックする ものによっては画面キャプチャで画像差分を見るってやり方もあるけど個人的には好きじゃない) 最低でもこの辺を意識して作らんといかんから、 そんな画面ポチポチ終わりーでいかんぞ…・… 特にUIの自動化は変更に弱い認識だから、本当に最後の最後で実装しないと地獄を見るし : デフォルトの名無しさん [sage] 2020/09/26(土) 23:17:16.83:EyP34oM1 単体テストのモジュールってさ 上流で変更があると枝葉って変更じゃなくて消滅と生成のが多くない? そうなると実ははじめの一回目しか実は見てないんじゃない?って俺は思っちゃうんだよね 枝葉をくっつける本流の方が間違ってるときってそれそもそも自動化以前にテストやっとるのかと? 俺は単体テストの自動化テストはヒット数(実際にバグを捕まえた数)は少ないと思ってる 苦労した割には : デフォルトの名無しさん [sage] 2020/09/26(土) 23:22:01.06:GBugeZhr Ruby on Rails のRSpec で有名な、ソニックガーデンの伊藤淳一とか、 Serverspec の作者・宮下剛輔とか、有名 YouTube で有名な、雑食系エンジニア・KENTA は、 初心者のRailsポートフォリオに、CircleCI まで入れれば、有利と言ってるし 有名は人は皆、BDD の鬼! : デフォルトの名無しさん [sage] 2020/09/26(土) 23:25:08.71:gRR2jm5z 単体テストでバグの発見数は正直重要じゃないな というかそんなん集計とるか? 普通は単体テストが成功してからコミットするし、テストコード無しでコミットしようとしたらプログラマー〆るだろ ……というか仕様変更の度に関数が消滅と生成が起きるって それはどっちかと言うとプロジェクトの問題では……? : デフォルトの名無しさん [sage] 2020/09/26(土) 23:29:44.66:EyP34oM1 総合や結合の結果の判別なんか ログの最後の出力がCompleteだったぐらいでええやろ 機材がクソってるのにログにCompleteって出てるならそれってテストScriptのせいじゃなくてそもそもログ出力腐ってるやろ? : デフォルトの名無しさん [sage] 2020/09/26(土) 23:35:25.55:EyP34oM1 きっちりメソッドが分けられず 他の機能と融合してるから 変更が多いんやろ 普通は上流の変更があったら枝葉のメソッドは生成と消滅が多い : デフォルトの名無しさん [sage] 2020/09/26(土) 23:39:59.73:gRR2jm5z そこは仕様によるし、あと責務の分割とかそういう発想でプログラムを組めばいい 超簡単な例として、電卓を上げるぞ win10の電卓を叩くと 10/3 = 3.3333333333333333333333333333333 20/3 = 6.6666666666666666666666666666667 っていう感じで小数点31桁で出てくる この結果から以下の仕様が読み取れる ・計算した結果が無限小数の場合、小数点は31桁まで表示する ・小数点31桁目は四捨五入して表示する っていう仕様が予測できる と言う事は、最低限の実装方針としては以下のようにすると、楽に単体テストが実装できる ・計算ロジック側は小数点31桁よりも大きい桁数でユニットテストは判定すれば良い、単体テストは可能だし、変更も簡単にチェックできる ・画面表示をする際に小数点31桁として出力するように四捨五入するメソッドを実装してかませればいい、このメソッドも単体テストが可能になる ようは必ずしもすべての計算結果の小数点桁を指定する必要は無い、基本的には余裕のある実装にしておけば早々壊れない : デフォルトの名無しさん [sage] 2020/09/26(土) 23:50:46.00:gRR2jm5z それはテストツールによるとしか言えん ちゃんとしたGUIテストツール使って、シナリオも確認してるのであれば もちろんばログレベルの確認で良い ただUWSCって名前が出たからついな あれは自動操作用の目的だし、そもそも今開発止まってるから使うべきツールではない : デフォルトの名無しさん [] 2020/09/27(日) 00:16:05.83:4yJ9ltzt テストコードコミットしたらぶっ殺すわw 仕事しろと : デフォルトの名無しさん [] 2020/09/27(日) 00:17:13.78:4yJ9ltzt 自己満は趣味でやれ、仕事でテストコード書くなと : un.coder ◆n27dpjULd2 [sage] 2020/09/27(日) 00:20:52.87:u5qdbgw4 複数の下流工程を管理する際、テストコードの無い成果物を渡されても、そのソフトウェアモジュールを製品に組み込んでもいいのか判断に困る。 そもそも、単体テストが済んでいるということは、そのソフトウェアモジュールはテスト仕様の範囲では正しく動くことが保証されているわけだ。 だから、完璧な単体テストさえ行っておけば、完璧なモジュールを組み合わせて完璧な製品が出来上がるから、理論上完璧な単体テストができれば結合試験すらいらないんじゃないなって思う。(流石に大胆発言か?) ※顧客満足のチェックまでは無理だが。 ※ここで言う完璧なモジュールというのは組み合わせれば理想な製品ができるモジュールのこと。(前提条件がシュールすぎる?) まぁ、現実的に人が設計をする以上、仮に一つ一つのモジュールがテスト仕様書を満たしたところで組み合わせても上手くいく保証はないから結合テストもやるんだが...。 単体テストについては、こんなイメージだな。 : デフォルトの名無しさん [] 2020/09/27(日) 00:22:02.61:4yJ9ltzt プロならテストコード書かなくても動くコード書くのが普通 単体テスト書くことが目的化してしまってるのがマナー講師と呼ばれる所以 : デフォルトの名無しさん [] 2020/09/27(日) 00:26:17.42:4yJ9ltzt 単体テストは時間の無駄だから 単体テストのテストコード見て判断する木偶の坊が管理してるとかそのプロジェクト破綻してるだろwwwwwwwwwwww 大局を見ろよ、設計として正しいかどうかで判断しろ、単体テストのテストコード見てどうするんだバカwwwwwwwwwwwwwww wwwwwwwwwwwwwwww笑い死にさせる気かwwwwwwwwwwwwwww : un.coder ◆n27dpjULd2 [sage] 2020/09/27(日) 00:27:07.37:u5qdbgw4 なんか、さっそく、あぼーんされている奴が沸いてるんだけど。 ごめんね。俺のブラウザだと、NGが共有されるから、読めないや。 : デフォルトの名無しさん [] 2020/09/27(日) 00:28:35.95:4yJ9ltzt 「単体テストのコードがあるな、よし!」とか言ってるのかwwwwwww wwwwwww現場猫かよバカがwwwwwwwwwwwwwwwww wwwwwwwwwwwwwwwwwwwwwww : デフォルトの名無しさん [] 2020/09/27(日) 00:29:25.18:4yJ9ltzt 見てるくせにwwwwwNG解除してみてるくせにwwwwwwwwwwwww wwwwwwwwwwwwwwwwwwwハゲワロwwwwwwwwwwwwww wwwwwwwwwwwwwwwwwwwwwwwwww : デフォルトの名無しさん [] 2020/09/27(日) 00:31:31.73:4yJ9ltzt お前ら笑いの才能だけはあるよなwwwwwwwwww wwwwwwwwwすげーわ単体テストのテストコード見て管理した気になってるとかwwwwwwww wwwwwwwwww次元が違うわwwwwwwwwwwww : デフォルトの名無しさん [sage] 2020/09/27(日) 00:33:43.88:gReWMIlS 適当に有名処のフレームワークのGithub覗いて来たけどさ がっつりユニットテストコード書いてるけどね、仕事として それとも今でも一線で活躍してるフレームワークをまた10年前のシステム〜とかで良い訳でもするん? あ、オープンソースだから参考にならないっていうかもしれないな! Djangoフレームワーク(python) ttp://https://github.com/django/django/tree/master/tests コード例 ttp://https://github.com/django/django/blob/master/tests/admin_scripts/tests.py Springフレームワーク(java) ttp://https://github.com/spring-projects/spring-framework/tree/163b97f1ff44b4239f1e66ea5228c68b4bef729b/spring-test/src/test/java/org/springframework/test コード例 ttp://https://github.com/spring-projects/spring-framework/blob/163b97f1ff44b4239f1e66ea5228c68b4bef729b/spring-test/src/test/java/org/springframework/test/context/TestExecutionListenersTests.java : デフォルトの名無しさん [] 2020/09/27(日) 00:36:47.59:4yJ9ltzt ロクなテストしてないな、やっぱ単体テスト無駄だわ、そのテストなくても問題ない いいよなーオープンソースは気楽でよー、人件費なんて無限に湧いて出るようなもんだもんなー お前のようなアホが実績欲しさに無駄なコード書いてくれるもんなーいいなーうらやましいなー 無駄なテストコード書いて時間つぶして居られるなんて幸せものだなー : デフォルトの名無しさん [] 2020/09/27(日) 00:38:29.69:4yJ9ltzt 無駄なコードでも大変だから仕事した気になれるんだろうなーやりがいはありそうだよねーwwwww wwwwwwww一銭の価値もないけどwwwwwwwwwwwwww : デフォルトの名無しさん [] 2020/09/27(日) 00:40:09.14:4yJ9ltzt お前ら授業中に真面目にノート取って先生に褒められて勉強できる気になってそうwwwwww : デフォルトの名無しさん [] 2020/09/27(日) 00:40:57.58:4yJ9ltzt でも高卒どまりwwwww : un.coder ◆n27dpjULd2 [sage] 2020/09/27(日) 00:47:26.86:u5qdbgw4 有名どころのテストコードを見たことが無かったけど、思ったより普通だった。 でも、まぁ、勉強になる。 : デフォルトの名無しさん [sage] 2020/09/27(日) 00:55:35.74:gReWMIlS >ロクなテストしてないな、やっぱ単体テスト無駄だわ、そのテストなくても問題ない 「この単体テストは無駄、不要」っていう判断を下すには以下を知って無きゃいけない ・テスト対象のコード仕様 ・テストコードの内容 先に言っておくが、無駄なテストコードっていうのはもちろん存在するぜ テストカバレッジを水増しするようなコードとかな あんたは3分足らずで言語仕様も異なる二つのフレームワークのソースを見て コードの仕様とテストコードを理解して文句を付けてるわけだ いやー、すごいすごい、単体テスト不要派なのにめちゃくちゃ詳しいんですねー あ、ちなみにだけどさ『2020年』のWeb調査で 次に学ぶべきWebフレームワークの人気ランキングで Djangoは3位、Springは7位につけてるぐらい人気があるフレームワークなんで ttp://https://info.hackerrank.com/rs/487-WAY-049/images/HackerRank-2020-Developer-Skills-Report.pdf : デフォルトの名無しさん [sage] 2020/09/27(日) 01:03:36.87:gReWMIlS あ、1位のReact、2位のAngularもテストコードは実装してるぞ (自分がJavaScript使ってないからあんまりこの辺のコードは読まない) React ttp://https://github.com/facebook/react/tree/9025949d840c89619bed9bf06f5c14c25c141c5a/scripts/jest Angular ttp://https://github.com/angular/angular.js/tree/master/test しかしまさか有名なオープンソースすら否定すると思わんかったわ 一体何を根拠にその自信が持てるのか分からん : デフォルトの名無しさん [sage] 2020/09/27(日) 01:14:09.94:gReWMIlS あと中々面白いのがこれだな ttp://https://github.com/JetBrains/intellij-community やまほどテストコードが転がってるから読み込むだけでもいい勉強になる テストフォルダが細かく切られてるから読み解くのがちょっと大変だが ttp://https://github.com/JetBrains/intellij-community/blob/master/python/testSrc/com/jetbrains/python/PyBlockEvaluatorTest.java 個人的にはDjangoのテストフォルダの構成が一番読みやすかった : デフォルトの名無しさん [sage] 2020/09/27(日) 01:22:23.93:gReWMIlS PythonのテストフレームワークでPyTestっていうのがあるんだけど サンプルコードが少ないっていう問題があるんだが その時はPyTestのgithubを見ると良い ttp://https://github.com/pytest-dev/pytest/tree/master/testing なんとPytestはPytestでテストしてるから、これを読み込むのが一番良かった 何より分かりやすい : 313 [sage] 2020/09/27(日) 04:26:20.61:6sIZ9RBB 日本では、この2人がBDD の鬼! Ruby on Rails のRSpec で有名な、ソニックガーデンの伊藤淳一は、 RSpec の本、Everyday Rails も翻訳してるし、 Serverspec の作者・宮下剛輔も、有名 : デフォルトの名無しさん [sage] 2020/09/27(日) 04:47:51.79:cmce3quc 結局オープンソースとか有名プロジェクトは 単体テストを行うのは最低限の常識レベルになってるんだな : デフォルトの名無しさん [sage] 2020/09/27(日) 04:48:54.87:cmce3quc あ、もちろん単体テストを自動テストするって話ね 手動だったら単体テストやってるなんてこと外部からわからないから当然かw : デフォルトの名無しさん [sage] 2020/09/27(日) 04:52:42.32:cmce3quc 手動テストの問題はコストがかかること 人海戦術でやるという発想でコスト意識がないのだろう だいたいこういう所は客が金を出してる。つまり自分の懐は傷まないw コストがかかる手動テストのプロジェクトでのコスト削減の発想はテストが必要なることをやらないこと ソースコードを修正するとテストが必要になる。つまり極力ソースコードを修正しない。 こういうところは未だにIEじゃないと対応してませんとかやってる。 作って検証ができないからユーザビリティも悪い : デフォルトの名無しさん [sage] 2020/09/27(日) 08:00:13.40:ZfMHcABY Google map ttp://https://github.com/googlemaps/android-maps-utils/blob/master/library/src/test/java/com/google/maps/android/PolyUtilTest.java#L7 調べると事例なんて腐るほどあるな。 ただ、いまいち自動化という言葉の意味がわからない(ただの無知)。 有償のテストツールを使ったことないけど...自動化とは言えど、テストコードを記述してビルドして実行することには変わりがないのだろう? 無知故の疑問だが、自動化と非自動化の差って何だ? : デフォルトの名無しさん [sage] 2020/09/27(日) 11:53:53.72:cmce3quc 「ちゃんとテストしたのか?」 ・自動化 「はい、ここにテストした内容が書いてあります。これを実行しました。 テストに通ったことはテストの実行結果から判断できます。 もう一回やってみろって?コマンドを実行するだけですのですぐ終わります。」 ・非自動化 「はい、ここにテストした証拠のスクショがあります。手順通りに実行してOKっぽかったからチェックを入れました。 テストに通ったかどうか?手順通りにやりましたよ!スクショがあるんだから信じてください。 もう一回やってみろって?全部ですか!?何時間、いえ何日かかると思ってるんですか!」 : デフォルトの名無しさん [sage] 2020/09/27(日) 12:14:40.61:kiO2NTDS エビデンスは? : デフォルトの名無しさん [sage] 2020/09/27(日) 12:17:40.72:cmce3quc あなたがもう一回実行すればいい あなたもすぐにテストを実行したというエビデンスを作ることができる : デフォルトの名無しさん [sage] 2020/09/27(日) 12:21:56.20:kiO2NTDS じゃあ、作業未完了だね 納品物にエビデンスって書いてあるじゃん : デフォルトの名無しさん [sage] 2020/09/27(日) 12:24:22.83:cmce3quc 実行した姿をビデオカメラに写しておけばいいだけでは? このテスト、私が実行しましたってwww それ以外に何が欲しいんですかねぇ : デフォルトの名無しさん [sage] 2020/09/27(日) 12:29:15.25:VyFDY5e4 エビデンスが要求される粒度のテストのためにエビデンス生成フレームワーク作っとくと便利よ : デフォルトの名無しさん [sage] 2020/09/27(日) 12:33:35.94:VyFDY5e4 もちろん1番大事なのは自動テストの性質に合わせたエビデンスの形態を定義して、客に受け入れさせる営業力だが : デフォルトの名無しさん [sage] 2020/09/27(日) 12:50:07.02:CqP8QnJk 日曜だから市場で買ったカニの出汁を濃縮してるわ、冷凍してとっとくんだ これがホントのカニdense : デフォルトの名無しさん [sage] 2020/09/27(日) 13:02:27.51:cmce3quc テスト自動化のほうが安くなります。 手動で作業したらその分時間がかかります。 スクショとったらその分時間がかかります。 しかもそのとったスクショ、あなた全部検収するんですか? みたいにいえばOK 金と手間がかかる問題を客に押し付ければ意見は通る : デフォルトの名無しさん [sage] 2020/09/27(日) 13:25:38.79:3AXdWV8W ええ、そうですよ : デフォルトの名無しさん [sage] 2020/09/27(日) 17:13:04.31:gReWMIlS UIの自動テストはスクショもログ+スクショ自動生成までやってくれるから 本当にエクセルに張り付ける作業は不要なんだよな スクショ張り付け作業をこれやらされる新人はマジで悲惨 : デフォルトの名無しさん [sage] 2020/09/27(日) 17:29:23.89:I+ot45zN しまいにゃ手動でやれば、バグがあって金がかかろうとも、丁寧な作業をしてると客を騙しはじめるのだろうな : デフォルトの名無しさん [sage] 2020/09/27(日) 18:28:44.51:3AXdWV8W ていうか自動化にエビデンス入ってねぇのかよ 客に出せるレポートなんか出んだろフツー : デフォルトの名無しさん [sage] 2020/09/27(日) 18:47:20.22:9HAdnqqz エビデンスは手作業で取るもの。自動で撮って誰が確認するというんだ? 客はエビデンスがあることを見てるだけで内容までは確認しないものだぞ エビデンス撮った本人が、よくわからんが、まあバグっぽくない画面で動いてるからヨシ!ってやって やっとエビデンスの意味があるというものだろう : デフォルトの名無しさん [sage] 2020/09/27(日) 23:33:39.95:3AXdWV8W ログでもいいやん 正しく動く証明になれば : デフォルトの名無しさん [sage] 2020/09/27(日) 23:48:48.71:mDpIXF3L Firefox for iOS
ttp://https://github.com/mozilla-mobile/firefox-ios Wire (エビデンスあり) ttp://https://github.com/wireapp/wire-ios kickstarter (エビデンスあり) ttp://https://github.com/kickstarter/ios-oss : デフォルトの名無しさん [sage] 2020/09/28(月) 00:00:12.68:Z60TNrQV ログが正しく動いてることを証明するエビデンスが必要 そのエビデンスが正しいことを証明するエビデンスが必要 さらにそのエビデンスが正しい・・・ : デフォルトの名無しさん [sage] 2020/09/28(月) 00:42:07.82:IvlPnhNT ログはたんなる実行結果に過ぎないから正しく動く証明にはなることはないよ ログを正しく動く証明にするには方法は2つ 1. ログを取った担当者が、それをみて判断する 2. ログを取った人と別の人が担当者が、それをみて判断する どちらが判断するにしても、正しい答えを知らなければ正しく動くと証明することはできない だから上の方で言っていた正しい答えなんか事前にわかるわけ無いだろ!それっぽい値ならそれでいいだろ! なんてのは問題外なわけ。正しく動く証明をしてないわけだから スクショなんかも、取ったってそれみて後から検証なんかしないでしょ? 今からスクショみてバグが表示されてないか見ますなんてしないでしょ? あれは仕事サボってないかとかいう作業完了報告書だったり、なにか問題が 起きたときにちゃんとやったのかという責任追及をするための道具に過ぎないよ かろうじてバグがあったという証明ができるぐらい。正しく動く証明ではなくバグが有ったという証明ね まあつまりログとっただけでは何の証明にもならないって話 ログと正しい答えを目視で比較する vs コンピュータでログを自動的に比較する(それが自動テスト)の違いよ 人力で比較してりゃ時間もかかるしミスもある。何もいいことはないね : デフォルトの名無しさん [sage] 2020/09/28(月) 01:55:11.12:TvE1ypt9 いや、ログ出力のテスト通ってるし : デフォルトの名無しさん [sage] 2020/09/28(月) 03:01:07.29:XaZwDbHz ログって言葉が独り歩きしてるけど 基本的に自動テストって ・想定通り動いた=OK出力(グリーン) ・想定通り動いていない=NG出力(レッド) の2観点しかない 自動テストは結果判定もしてるから、実行だけ成功=OKには絶対にならん (そんなテストを実装してたらぶっ殺されるわ) で、自動テストのログが当てにならないっていう人って 無意識に以下のパターンを想定してるんだよね ・想定通りに動いて無いにも関わらず、OK出力(グリーン)が出ている可能性がある つまりテスト側の不具合を懸念して、それでバグを取りこぼす危険性を考えているわけだ 結論的に言うと、そういうのはテスト作り方の問題になるし 発生するとのは相当なレアケースになる というかこれが頻発してるなら、自動テスト組んだプログラマはクビにしろ 正しくOK/NGが判定できない自動テストならそりゃテストになってねえ 万が一、このレアケース発生しても修正をすればいいだけの話で、クリティカルな問題に発展する事はほぼ無い (むしろ人間によるチェックの方が、判定の曖昧さ、ミス隠し、スクショ偽造とか色々やってくるから個人的に信頼出来ん) : デフォルトの名無しさん [sage] 2020/09/28(月) 08:09:53.88:IvlPnhNT ログ出力のテストって何? ログの話は「ログ見て人力で目視比較してそれっぽい値ならOK」ってやつでしょ ログに出力した後に人力比較があるんだよ : デフォルトの名無しさん [sage] 2020/09/28(月) 09:58:00.07:9LRH2lrq ログ出力だって機能の一つなんだからテストするでしょ? ちゃんと指定通りのフォーマットで出てるかどうか? 日時、種別、内容などなどね しないの? : デフォルトの名無しさん [] 2020/09/28(月) 10:34:47.24:kZm+fu8v するわけねえわwwwユーザと関係ないだろうがバカがwwwww : デフォルトの名無しさん [] 2020/09/28(月) 10:35:38.29:kZm+fu8v 何のためのテストだよwwwwww 意味のないテストやって尺稼ぎしてんじゃねえぞ経営者目線で仕事しろ : デフォルトの名無しさん [] 2020/09/28(月) 10:37:34.85:kZm+fu8v ユーザと関係ないところで一生懸命頑張っても誰も認めねえからな 売上に一ミリも寄与しないこと頑張ってどうするんだwwwwwwwww wwwwユーザから目をそらすために関係ないこと頑張ってるんだろwwwwww パソコンが好きなだけじゃ会社は成り立たねえんだよwwwwwwwww : デフォルトの名無しさん [sage] 2020/09/28(月) 10:49:56.00:IvlPnhNT > ログ出力だって機能の一つなんだからテストするでしょ? わざとかもしれないけど(笑)話がすり替わってる ログ出力機能のテストの話じゃなくて ○○機能のテストをするとき、その機能の結果をログに出力して その出力を目視で人力比較してテストするのはアホという話をしてる : デフォルトの名無しさん [] 2020/09/28(月) 10:51:15.85:kZm+fu8v 単体テストのテストコード書くほうが100倍アホだからwwwwww wwwwwwwそこんとこ忘れんといてよwwwwwwwwwwwwww : デフォルトの名無しさん [sage] 2020/09/28(月) 10:51:35.57:IvlPnhNT 自動テストでも実行結果をログに出力できるわけで コンピュータで「比較」までやるか、人力で「比較」するか 誰が「比較」するのか?が違う所なんだよね : デフォルトの名無しさん [sage] 2020/09/28(月) 10:53:06.94:a6s5Hb4H なんかよくわからないところに噛み付いてるのでスルー : デフォルトの名無しさん [sage] 2020/09/28(月) 10:57:53.54:053eSEmA wの数と知能の高さは反比例するらしい : デフォルトの名無しさん [sage] 2020/09/28(月) 11:18:15.31:IvlPnhNT これの話だからな 289 自分:デフォルトの名無しさん[sage] 投稿日:2020/09/26(土) 20:50:49.34 ID:c/9EiqGf [4/8] 単体テスト(自動テスト)で正しい値と比較 vs 目視確認でそれっぽい値かどうかチェック って話だったの忘れたのかな?w 291 返信:デフォルトの名無しさん[] 投稿日:2020/09/26(土) 20:52:18.62 ID:IgGP+BQU [29/30] 結局最後に頼れるのは人間の目だからな 何のために目が付いてるか考えろ ログを見るためだろうが : デフォルトの名無しさん [sage] 2020/09/28(月) 13:05:35.15:Pd1BjD7i 関数の入力仕様と出力仕様が明確なら ログ出力関数のテストは簡単 でもログ出力関数を使う処理が正しくログ出力してるかどうかのテストはそう簡単ではない なぜならログ出力の正しさを判定するためにはログ出力以外の結果は正しいということが事前にわかってなければいけないから つまりログ出力だけでは処理の正しさを証明することは出来ない テストで「正しいと証明できる」という考え自体がある種の幻想 : デフォルトの名無しさん [sage] 2020/09/28(月) 15:21:10.71:XaZwDbHz このスレ見てると一体どういう自動テストを実装してて どういうログを流してるのか本当に気になるわ そんな突き抜けバグ(不具合起きてるのに何故か正常終了扱いになってる状態)を抱えた自動テストばっかり使ってるの? 本当にどういう自動テストを想定してるのか分からん まさかログに値だけ出して、後でその値が正しいのか人間がチェックしてるのか? それ自動テストじゃなくて、ただの自動実行だよ テストっていうならグリーン/レッド判定まで実装してなきゃ使いもんにならん : デフォルトの名無しさん [sage] 2020/09/28(月) 15:28:21.82:IvlPnhNT > 本当にどういう自動テストを想定してるのか分からん > まさかログに値だけ出して、後でその値が正しいのか人間がチェックしてるのか? ログに値だけだして〜って言ってる人は、自動テストしてないよ ログに値だけだして目視確認する手動テストでいいって言ってる なぜなら正しい結果がわからないから これ↓ね。こいつの言ってる意味がわからんと思うけど、意味不明だと俺も思うw 28 名前:デフォルトの名無しさん[sage] 投稿日:2020/09/23(水) 20:17:23.00 ID:cCwBtdaA [9/11] テストと言いつつできるのは計算過程と処理結果を残すだけだと思ってるよ俺は 長年考えた結果 正しい値なんてのは実は物理的に誰も知りえないということを理解した なのでテストで重視するのは俺は組んだコードのエビデンスの方 どんな処理書いてどんなログ出したか 自動テストは結局同じやつが作ってる以上同じ不具合入ってるだろうなって思ってるw : デフォルトの名無しさん [sage] 2020/09/28(月) 15:54:13.14:6prVz1CN そろそろレス古事記に構うのをやめようか… テストはバカだという証明はできるけど、いくら指摘しても修正しない限りバカはバカのままだし : デフォルトの名無しさん [sage] 2020/09/28(月) 17:44:17.57:KzfYiCsA エビデンスとはテストを端折らずに実行しましたと言う証拠であって 動作の正しさやテスト手順の正しさを証明する証拠ではない エビデンスという名の作業ログ : デフォルトの名無しさん [sage] 2020/09/28(月) 17:47:45.47:vQtpARZo 自社開発ならエビデンスは要らんよ しょせん対外的な作業証明でしかないからな それよりテストコード、テスト可能なコードを書いてくれや : デフォルトの名無しさん [sage] 2020/09/28(月) 18:18:18.53:PsVubO2q 細かいことで揉めるから、 のような提案をする空気だけは読めるバカが出世して管理職になんだな。この業界は : デフォルトの名無しさん [sage] 2020/09/28(月) 18:49:50.77:l/9oGi4t そのとおり バグっている場合は、そのバグの様子をスクショしてるだろうからバグがあるというエビデンスにはなるだろう しかしバグがないというエビデンスにはならない。これは自動テストでも同じだが、大きな違いは バグってないというスクショをとっても、正しくテストを実行したというエビデンスにはならないという点 スクショ取るだけではテストケースは書いてあっても、そのテストどおりにテストをしたという証拠にはならない 最終結果だけでなく一連の動作を動画で撮影してるならまだわかるが、間違って手順でテストしたかもしれない つまりエビデンスというのは(手順が間違ってるかもしれないけど)ちゃんと作業しましたという意味にしかならない どういう手順でテストを実行したかという記録が含まれていない 自動テストの場合は最終結果だけでなくどういう手順でテストを実行したかが記録されている。 必要なら再実行もできる。だからこれこそが本当のエビデンスになる。 : デフォルトの名無しさん [sage] 2020/09/28(月) 18:52:55.72:l/9oGi4t スクショには正しい手順でテストを実行したかが記録されていないのだから 作業をしましたという報告でしかない。 バグのスクショは意味があるが、正しく動きましたというスクショは必要ない だからこれは本来この項目をテストOKでしたとチェックリストにチェックつけるだけで十分 チェックリストにOKでしたというチェックをつければ十分なことに スクショを必要とするのは、単に作業者の報告を信用してないという意味でしかない : デフォルトの名無しさん [] 2020/09/28(月) 18:59:46.59:S2C1y2x2 単体テスト書いとけば改修しても自動で既存機能が壊れてないことが確認できる ゆえに機能の改修を心置きなくできる テストがないと気軽に既存機能に手を入れるわけにはいかなくなる (あたりまえ) : デフォルトの名無しさん [sage] 2020/09/28(月) 19:04:07.86:l/9oGi4t 自動テストがないと手動テストをしないといけない それは膨大な作業量となる だからバグのないコードを書け、作ったら改修はするな!と叫ぶ バグがあったときのことまで考えてない 仕様に変更があったときのことまで考えてない 一旦書いたら終わりという前提でいるやつがいる : デフォルトの名無しさん [sage] 2020/09/28(月) 19:12:10.31:DyBDarNn そのほうがビジネスとしては美味しんだ テクニカルな面で優れた手法がビジネスでも優れた手法であるとは限らない : デフォルトの名無しさん [sage] 2020/09/28(月) 20:30:31.71:l/9oGi4t 単にビジネスが下手なだけだろ? 内部は楽をして、外部に対してこんなに頑張ってるんですよーってアピールすればいいだけ 外部に頑張りをアピールするために、実際に内部でも無駄に頑張る必要はない : デフォルトの名無しさん [sage] 2020/09/28(月) 20:34:16.60:ogYc/62K >バグのスクショは意味があるが、正しく動きましたというスクショは必要ない 正しく動いてたと思っていたものに後から不具合が見つかった場合 前回テスト時のスクショがあると調査が効率的にできる それは自動でも手動でも同じ >スクショを必要とするのは、単に作業者の報告を信用してないという意味でしかない 個人への信用に依存したシステムはミスがあれば個人を責めることになるのですぐブラック化する 典型的なマネジメント能力不足の例 : デフォルトの名無しさん [sage] 2020/09/28(月) 20:40:07.93:l/9oGi4t > 正しく動いてたと思っていたものに後から不具合が見つかった場合 > 前回テスト時のスクショがあると調査が効率的にできる 不具合があると既に分かった後の話ですよね? スクショがあると、どう効率的に調査できるんですか? : デフォルトの名無しさん [sage] 2020/09/28(月) 20:48:11.43:l/9oGi4t > 個人への信用に依存したシステムはミスがあれば個人を責めることになるのですぐブラック化する だから自動テストでコードにするんですよね。他の人がテスト内容をレビューできるように スクショだと、実際どういう手順でテストしたのかが記録されてないから ちゃんとテストしてないだろ!って個人を責めることにつながる : デフォルトの名無しさん [sage] 2020/09/28(月) 20:56:15.23:l/9oGi4t 手動テストで問題なのが、前やったときのテストと完全に同じ状態が作れないということ 作業の順番でも状態が変わってくるから前後にやったテストによって成功したり失敗したりする だから改めて同じと思った手順でテストしたら失敗することがある スクショを取っていても「お前この前ちゃんとやってなかっただろ!」と責められる : デフォルトの名無しさん [sage] 2020/09/28(月) 20:56:35.83:ogYc/62K 自分で考えて 自動か手動かには関係ない 自動化したUIテストでスクショ取らないのかな? : デフォルトの名無しさん [sage] 2020/09/28(月) 20:59:41.24:l/9oGi4t UIテストってわざわざ書いたってことは それ以外には当てはまらないって自覚してるのかなw : デフォルトの名無しさん [sage] 2020/09/28(月) 21:02:30.45:l/9oGi4t 自動化したUIのテストでスクショを撮るというのはおかしな表現で "テスト"を自動化していれば、当然自動的にテストされるわけよ スクショはいらない が言ってることのほんとうの意味は UIのスクショを自動で撮っているだけで UIのテストは人が目で見てやってる手動テストだろう? それとも違うんか? UIのテストを人が目で見ず本当に自動化してるんか? : デフォルトの名無しさん [sage] 2020/09/28(月) 21:50:00.98:p7AH+v00 でもいい感じにお高いツールはUIテスト時のスクショも自動で撮ってくれるからねw ないからっていらないやいって悔し涙流さなくていいぜ : デフォルトの名無しさん [sage] 2020/09/28(月) 22:13:57.33:F7s1Ev+m 別に高くなくても取ってくれるやろw 論点はそこじゃない 取った後どうするのかだろ : デフォルトの名無しさん [sage] 2020/09/28(月) 22:22:53.69:wtgFthbS 高いツール使ってるんだぜ悔しいだろ みたいな意味かな? : デフォルトの名無しさん [sage] 2020/09/28(月) 22:46:00.77:kdgXLiCU 撮ったあとどうするもこうするもお高いツールはクリックすればすぐ見れるんだよ 手動でエクセルに貼る作業とかないから : デフォルトの名無しさん [sage] 2020/09/28(月) 22:46:59.66:kdgXLiCU ただ・・・ (実はあんまり手間減らないんだけどな) : デフォルトの名無しさん [sage] 2020/09/28(月) 22:49:58.70:oBRHa3sA 自動化は人間が楽をするために自動化してるだけなんだからログでもスクショでも何でも良いけど、テスト結果がグリーンであってもエビデンスは人間の目で検証しないとダメだよ。自動化の利点は、手動テストやってる要員や係るリソースを他のことに回せるってだけ。 : デフォルトの名無しさん [sage] 2020/09/28(月) 22:59:02.59:oBRHa3sA 自動テストがプログラマの自己満と言われる所以はテストパターンを無限に作成できるからだよ。sumAtoFで引数を6個取るなら0,0,0,0,0,0から9,9,9,9,9,9の範囲や、マイナス値とか小数点とかnull値を含めていくらでもテストパターンが作れる。しかも再実施も簡単。手動テストじゃそうはいかないからね。 : デフォルトの名無しさん [sage] 2020/09/28(月) 23:04:39.36:F7s1Ev+m 見てないでテストしろよw : デフォルトの名無しさん [sage] 2020/09/28(月) 23:05:15.32:F7s1Ev+m 手動テストでもテストパターンは無限に作れると思うが?w : デフォルトの名無しさん [sage] 2020/09/28(月) 23:05:54.07:F7s1Ev+m > テスト結果がグリーンであってもエビデンスは人間の目で検証しないとダメだよ。 え?なんで?愛情がどうとかどうでもいい話だよw : デフォルトの名無しさん [sage] 2020/09/28(月) 23:07:17.45:oBRHa3sA あ、初めて自動化したときだけエビデンスの検証してねってこと。次の改修では追加・変更したテストパターンのエビデンスを検証する。それ以外の既存のテストパターンは結果がグリーンであればそれでデグレとしての証明は担保できてると思うよ : デフォルトの名無しさん [sage] 2020/09/28(月) 23:09:04.76:oBRHa3sA PGした人がテストパターンも作ってたら同じ不具合が混入する可能性があるでしょ : デフォルトの名無しさん [sage] 2020/09/28(月) 23:11:15.46:oBRHa3sA 手動テストでも無限に作れるけど人海戦術しないとテストしきれないでしょ。テストの規模とプロジェクトによってはそんなの現実的じゃない。だから自動化のが簡単。 : デフォルトの名無しさん [sage] 2020/09/28(月) 23:38:45.80:XaZwDbHz >自動テストがプログラマの自己満と言われる所以はテストパターンを無限に作成できるからだよ。sumAtoFで引数を6個取るなら0,0,0,0,0,0から9,9,9,9,9,9の範囲や、マイナス値とか小数点とかnull値を含めていくらでもテストパターンが作れる。しかも再実施も簡単。手動テストじゃそうはいかないからね。 流石にテストパターンの洗い出しすら考えないのは頭おかしいやろ 自動テストの実装コストもタダじゃないし というか不要なテストパターン(重複してるテストパターン)は消すぞ普通…… : デフォルトの名無しさん [sage] 2020/09/28(月) 23:40:02.84:XaZwDbHz というかテスト自動化で無限にテストが出来るって思ってる奴もいるのかよおおおもう あれだな、デジタル庁も作られるんだし 品質管理の観点として、テストに関してちゃんとガイドラインと共通規格決めてくれ 頭痛くなってきた : デフォルトの名無しさん [sage] 2020/09/28(月) 23:57:54.71:oBRHa3sA 理論上は可能だよねって話をしただけだよ。現場ではそんな無意味なテストしてないから発狂しないでよw テストパターン考えるときに大丈夫だとは分かっていても不安だから盛り込むパターンも少しくらいはあるよねってこと。人間だもん。ちょっと多めにテストして安心したいよね。 : デフォルトの名無しさん [sage] 2020/09/29(火) 00:00:16.04:Iz7+ZlTk 無限に作るとか、藻舞ら、境界値テストを知らんのか?w 例えば、正常範囲を10〜20 と決めたら、論理的に、9, 10, 20, 21 だけでOK のはずw -1, 0 も、9と同じ。 11, 19 も、10, 20 と同じ 100 も、21 と同じ こういうのを論理的思考と言う。 どれとどれが、同じグループですか? と言う問題 : デフォルトの名無しさん [sage] 2020/09/29(火) 01:22:33.83:xt+EJgQq > PGした人がテストパターンも作ってたら同じ不具合が混入する可能性があるでしょ え?なんで?w テストパターンってお前コードから生成すんのか? そもそも最初に、入力決めて、出力決めて、 そうなるように作るというのに意味がわからん : デフォルトの名無しさん [sage] 2020/09/29(火) 01:23:53.37:xt+EJgQq そうやって自動テストでもテストする値を決めるよね 無限に自動テストできるわけじゃないんだからさぁw : デフォルトの名無しさん [sage] 2020/09/29(火) 02:00:17.68:p269Qkae テストパターンを基にテストコードを書くよ。 最初に入力を決めて次に出力を決めてそうなるようにテストコードを書くよ。 テストを実行したら全部グリーンでもテストコードのコーレビューをするよ。 : デフォルトの名無しさん [sage] 2020/09/29(火) 02:11:15.35:xt+EJgQq > テストパターンを基にテストコードを書くよ。 そのテストパターンが間違っていたらどうするんだ! まあそういう事はあるよねw テストそのものが間違ってるってこと でもPGがテストパターンを作ると間違えるってのが意味がわからない PGが作ってもPG以外が作っても、テストパターンを間違える可能性は変わらない > テストを実行したら全部グリーンでもテストコードのコーレビューをするよ。 手動テストの場合どうするんだろうね。テストコードに相当するのはテスト手順なわけで テスト手順もレビューも必要なんだが、手動テストだとテストパターンのレビューしかしてなさそうw テストパターンはあってるけどテスト手順が間違っていて意味のないテストをしてたりしてな テストするときは先にデータを初期化して、この手順でデータ作ってからやらないとだめじゃないですか!みたいな : デフォルトの名無しさん [sage] 2020/09/29(火) 02:12:51.17:xt+EJgQq > 最初に入力を決めて次に出力を決めてそうなるようにテストコードを書くよ。 ここは言葉が間違ってるね × 入力を決めて次に出力を決めてそうなるようにテストコードを書くよ。 ○ 入力を与えて出力が決めたとおりになってるかを確認するテストコードを書くよ TDDではそのあとに、テストに通るように実装コードを書く : デフォルトの名無しさん [sage] 2020/09/29(火) 02:23:59.41:MtZ1Pd/Y 9.9999999999999999や20.000000000000001は? 境界値分析+同値分割は基本だけど 型の境界も意識しないとそのうちバグるよ : デフォルトの名無しさん [sage] 2020/09/29(火) 02:35:59.25:MtZ1Pd/Y >PGが作ってもPG以外が作っても、テストパターンを間違える可能性は変わらない コードを書いた人とそれに対するテストコードを書いた人が同じなら 同じ勘違いや同じ観点不足が発生するリスクは高まるよ 例えばが書いた例で整数値以外の入力という観点が欠落してれば コードでもその対応を書かないしテストの必要性にも考えが及ばない ただだからといって必ず違う人が書いたほうがいいというわけじゃない 低減できるリスクと作業効率とを考えて判断するもの : デフォルトの名無しさん [sage] 2020/09/29(火) 02:43:07.02:p269Qkae あぁそのとおりだった : デフォルトの名無しさん [sage] 2020/09/29(火) 02:43:46.13:p269Qkae ・PG組んだ人が一番思い込みが強いから、もしかしたら他の有識者と認識が乖離しているかもしれない。まぁレビュアがしっかりしてれば大丈夫。 ・手動テストの場合は、テスト条件を満たしていることが担保できるようなスクショを取得するよ。テスト条件どおりに実施してくれたかどうかは実施者を信用するしかないね。エビデンスに細工されたら誰も気づかないと思う。 ちゃんと実施してるつもりでも実際は細かい操作とか大事な操作をミスっちゃってて、それでもたまたま予想結果と一致しちゃう事もあるかもしれない。だけどそんな偶然は滅多に起きない。後でアドホックテストもするし、結合試験や統合試験で発見できればok。 ・エビデンスとテスト手順とパターンを見比べて「これは何のテストをなんだ?」って思うことは稀によくあるね。 ・手動テストでテストデータが必要な場合は事前準備としてそういうデータを用意してからテスト開始するよ。 : デフォルトの名無しさん [sage] 2020/09/29(火) 03:23:36.66:xt+EJgQq > 例えばが書いた例で整数値以外の入力という観点が欠落してれば > コードでもその対応を書かないしテストの必要性にも考えが及ばない だからそれ、コード書かない人でも 整数値以外の入力という観点が欠落することあるじゃんって言ってる むしろコードを書かない人のほうが、テストの必要性に考えが呼ばないことのほうが多い 「数値入れたらこういう計算してくださいね」 → 文字入れたら?え?文字入れた時?文字なんて入るの?そんなの想定外だよ : デフォルトの名無しさん [sage] 2020/10/01(木) 00:35:27.53:eJ1GgjYl set○○○系の値を設定するだけのメソッドってあるじゃん ケース1:resultがOKならOKとする ケース2:get○○○系メソッドを実行して値を確認する ケース3:実際にその値の変更の影響をうける処理を実行して確認する 実はもう結合まで来てんだけどどうやって確認する? : デフォルトの名無しさん [sage] 2020/10/01(木) 01:18:21.36:eJ1GgjYl あ、やってみたらget○○○系もよくわかんなかった 値取得できたけどそれが何? 何が取れると正しいの?ってのが一連の処理の流れだと取得できるべき正しい値が本気でわからん : デフォルトの名無しさん [sage] 2020/10/01(木) 01:47:22.39:5ZG2Vz6Q > 実はもう結合まで来てんだけどどうやって確認する? 確認する前に結合したのが悪いって話だろ? もうリリースしちゃったんだけどどうやってテストする?みたいな話だw : デフォルトの名無しさん [sage] 2020/10/01(木) 01:48:27.69:5ZG2Vz6Q > 値取得できたけどそれが何? 「値取得できた」 それがテスト (手動で)テストしてOKだったから何?と言われてもな 意味ないと思うなら(手動で)テストしないでいいんじゃない?w : デフォルトの名無しさん [sage] 2020/10/01(木) 01:49:32.00:5ZG2Vz6Q > 何が取れると正しいの? そんなに作る前からわかってる話ですよね? 作ってるなら「目的」があるはずですが あなたは一体何を作ってるんですか? : デフォルトの名無しさん [sage] 2020/10/01(木) 01:50:23.95:5ZG2Vz6Q あ、あれか。教科書写経してるだけだから 自分が何を作ってるかわからないとか んで作ってみて動かしたら・・・ゲームだった!みたいな事やってんの?w : デフォルトの名無しさん [sage] 2020/10/01(木) 21:43:23.18:YGkMqux4 コンパイラ作ってるんだが、検査は自動でランダム構文生成とかしてやってるよ もちろん普通の検査もやるんだけど、それだけだとパターン数が発散して検査しきれない ランダム検査はテスト件数でいうと1000億件とかになる 不具合でるのはそのうち5件とかだったりするんだけどね : デフォルトの名無しさん [sage] 2020/10/01(木) 22:26:34.54:bT++viin だからそれを手動でやればいいんですよ! : デフォルトの名無しさん [] 2020/10/02(金) 10:25:59.72:ccBFPzFH 自動化する単体テスト=関数単位のテスト エビデンスをとる単体テスト=1個の機能のテスト。例えば入力欄1個など : デフォルトの名無しさん [sage] 2020/10/02(金) 10:30:06.30:qiKhE9Co > エビデンスをとる単体テスト=1個の機能のテスト。例えば入力欄1個など その"エビデンス"でどうやって入力欄1個の機能がOKだと証明するの? 入力欄1個の機能がOKであると、誰もが認られるようなエビデンスとはどんなものが知りたい そこに入力欄の画像が1個あったって、機能が満たされてるかなんてわからんしね : デフォルトの名無しさん [] 2020/10/02(金) 10:50:47.71:ccBFPzFH 機能がOKだと証明するわけではない 「テスト項目の通り実行したらこの通りの画面になった」 つまり、テストを行ったという事を証明しているにすぎない だから入力ミスや、テスト実行者の勘違いまではフォローしきれない 機能の証明ではなくテスト実行の証明だから わざわざエビデンスに日時が入るように撮影することを要件としている 機能がOKだという証明だけであれば日時は不要だろう 実際、自動テストはテスト実行日時など重視していないはずだ (デバッグの為に日時を保存しているにすぎない) エビデンスに日時を入れるという行為があるかどうか それだけでもテストの性格がわかるというものだ テスト実行者を信用しないのであれば自動テストで十分だろう : デフォルトの名無しさん [sage] 2020/10/02(金) 11:03:54.55:5k+kT3LD 自己満だろうがなんだろうが顧客が納得すりゃなんでも良い : デフォルトの名無しさん [sage] 2020/10/02(金) 11:07:42.23:sGznlVtc > テスト実行者を信用しないのであれば 気にすべき所はテスト実行者を信用するかどうかじゃなくて ミスなくテストしたかどうかでは? 信用できる人にだって間違えることはあるんだし : デフォルトの名無しさん [sage] 2020/10/02(金) 11:11:38.77:5k+kT3LD テストのテストを作ろう : デフォルトの名無しさん [sage] 2020/10/02(金) 11:12:38.01:qQOsRvHB 画面にせっせと入力して保存ボタン データベースに登録されてるかチェック 苦しい_(┐「ε:)_ : デフォルトの名無しさん [sage] 2020/10/02(金) 11:23:36.85:IN7vVVT4 >エビデンスに日時が入るように撮影することを要件としている 初めて聞いたわw 日付入れたところで改ざん可能なんだから日単位でファイルを上げて 履歴追えるようにしとけば十分だろ : デフォルトの名無しさん [sage] 2020/10/02(金) 12:25:05.51:p0460FPy ログの位置がわかりやすいようにってだけだろそこ : デフォルトの名無しさん [] 2020/10/07(水) 06:48:55.17:/9qe8bOG xUnit嫌いな人割と身近にいるわ 単体テストしない派というか : デフォルトの名無しさん [sage] 2020/10/07(水) 07:43:09.85:30MBwAQY 仕様が決まってるテストはいいが決まっていなかったり曖昧なのは滅茶苦茶時間がかかるので嫌い : デフォルトの名無しさん [sage] 2020/10/07(水) 10:15:52.92:PQSR0KDO は? テスト仕様を決めるのも仕事だろ : デフォルトの名無しさん [] 2020/10/07(水) 10:30:45.44:EdLJXccd テスターのな : デフォルトの名無しさん [sage] 2020/10/07(水) 10:50:24.82:XQGZutpf テスターがどんな仕様を決めたの? : デフォルトの名無しさん [sage] 2020/10/07(水) 10:51:39.35:XQGZutpf テスターが仕様決めるって意味わからんw この関数は引数の全ての値を足す関数だ って決めるんか?w : デフォルトの名無しさん [sage] 2020/10/07(水) 10:53:47.21:Y8Dc73BQ 俺は常に自分でテストコードを書きながら仕事をしているから、いまいち単体テスト専用のテスターという存在がよくわからん。 新人教育目的で自分の成果物に対して不足しているテストコードを修正する形で書かせることはあるけど、基本的には実装する時にはテスト仕様もできてるしなぁ...。 : デフォルトの名無しさん [sage] 2020/10/07(水) 11:03:34.37:gjadbZmD 用語を知らないから、単体テスト=1画面のテストとか1アプリのテスト思ってるやつが居るんだよw 単体のexeファイルをテストするのが単体テスト はぁ〜〜〜〜ばか〜〜〜 : デフォルトの名無しさん [sage] 2020/10/07(水) 11:18:28.39:r+XQDTLB 小さい関数を心がければテストコードが必要なほど複雑なコードって書かなくない? テストコードを書くと必ずデータ用意しなきゃならないけどそのデータを間違って入力する確率のほうが高い : デフォルトの名無しさん [sage] 2020/10/07(水) 11:19:43.12:Y8Dc73BQ 俺さ、まさにリアルタイムでスマホアプリ開発しててテストコードを書いてるんだけど、お前、頭大丈夫? iOS、android、Windows対応のアプリ作ってるけど、こんなこと言う奴初めてみたよ。 JavaとかでJUnitとか聞いたことない? C#でプロジェクトファイルを作るとき、Unit testというテンプレート見たことない? お前、Windows開発すらしたことないだろ。 俺は別に1画面がどうのこうの言ってないし、そもそもexe単体とか論外だわ。 まず、単体テストについてググれカス。 : デフォルトの名無しさん [sage] 2020/10/07(水) 11:28:20.11:r+XQDTLB 日本語圏内で言う単位テストは普通は画面、帳票、バッチ、ようは要件定義に書いた機能ごとのテストだよ xUnitとかJUnitのようなもののことを言いたい場合には、ユニットテスト、あるいは自動テストと言ったほうがいい 日本ではユニットテスト≠単位テスト : デフォルトの名無しさん [sage] 2020/10/07(水) 11:32:47.67:Y8Dc73BQ 1からのやり取りを見てもそんなこと言えるの? あと、ググるとまっさきに出るのが「単体(ユニットテスト)とは」なのだが。 そして、俺もその認識なのだが。 : デフォルトの名無しさん [sage] 2020/10/07(水) 12:15:30.39:gjadbZmD おまえは文章が読めないんだなw おまえも馬鹿の一人だわw : デフォルトの名無しさん [sage] 2020/10/07(水) 12:17:06.36:gjadbZmD どれだけ小さい関数を作っても、テスト担当者にテスト仕様書を書いてもらないわないと 自分じゃ、テストできないアホがいる。 ログに出力してそれっぽい値ならOKとかいってるアホがいる : デフォルトの名無しさん [sage] 2020/10/07(水) 12:24:05.17:Y8Dc73BQ そういうことか! うん、俺も馬鹿だったわ。 いや、本当にすまぬ...すまぬ。 : デフォルトの名無しさん [] 2020/10/07(水) 12:24:46.22:EdLJXccd うちの会社もそれだなー : デフォルトの名無しさん [sage] 2020/10/07(水) 12:36:22.35:Y8Dc73BQ ん?割とガチで単体テストを機能毎のテストとして扱う会社は多いのか? 基本情報技術者試験や応用情報技術者試験の単体テストに関わる問題とか見ると、明らかにユニットテストの意味の問題があるように見えるのだが...。 そうなると、自動化もクソも無くね? それ以前に、の言うことは本当なのか気になる。 本当ならの言う単体テストについて紹介している文献とかあると思うのだが...ソースがほしい。 : デフォルトの名無しさん [] 2020/10/07(水) 12:40:45.08:EdLJXccd 大企業で仕事したらわかるよ だからエビデンス取るんやで : デフォルトの名無しさん [sage] 2020/10/07(水) 12:48:50.86:Y8Dc73BQ まず、ユニットテストと単体テストを区別するというのが本当なのか怪しいが、区別しているのなら、もちろん、そのユニットテストもやってるよね? : デフォルトの名無しさん [sage] 2020/10/07(水) 12:50:46.07:Y8Dc73BQ 更に聞くと、このスレはあなたが方の言う単体テストとユニットテスト...どっちについて扱うスレだと思う? : デフォルトの名無しさん [sage] 2020/10/07(水) 12:51:23.30:FBpfo5qf テストの分類と自動化するしなは別のベクトルだ 単体テストといったら自動化と連想するのはそのあたりの区別がついてないのだろうな 役割の分割をしないでGODクラス作ってそうなタイプ : デフォルトの名無しさん [] 2020/10/07(水) 13:01:40.31:EdLJXccd やってないよ! : デフォルトの名無しさん [] 2020/10/07(水) 13:02:22.58:EdLJXccd 手動で行ってエビデンス取るって言ってるんだからユニットテストでないことは明らかだと思う : デフォルトの名無しさん [] 2020/10/07(水) 13:02:54.82:EdLJXccd このスレでユニットテストの話をしてる人は社会経験のない木偶の坊だと思ってる : デフォルトの名無しさん [sage] 2020/10/07(水) 13:04:18.63:Y8Dc73BQ まぁ、責務が曖昧なGodクラスのユニットテストなんて自動化しようがないからな。 些細な変更ですぐに仕様が変わるし。 ユニットテストで不合格になるのではなく、 ユニットテストができないから不合格になるパターンだな。 でも、恐ろしい事を思いついてしまったよ。 もしも、常に神クラスを書いていてユニットテストができない企業がいたとする。 そして、その企業があまりにもユニットテストができないからユニットテストの意味を曲解することにしていたとしたら...やばいね。 まぁ、いいや。仕事だ。しばらく席を離れるよ。 : デフォルトの名無しさん [] 2020/10/07(水) 13:05:08.60:EdLJXccd な : デフォルトの名無しさん [sage] 2020/10/07(水) 13:09:37.22:c/M6qzGj > 基本情報技術者試験や応用情報技術者試験の単体テストに関わる問題とか見ると、明らかにユニットテストの意味の問題があるように見えるのだが...。 だからそういう世間一般の用語すら知らんのだよ そして基本情報技術者試験は意味がないとか行ってたりするw : デフォルトの名無しさん [sage] 2020/10/07(水) 13:12:03.83:r+XQDTLB ペーパーテストと現場のギャップぐらいは認識しとかないとだめでしょ それこそ実務経験を疑われる : デフォルトの名無しさん [sage] 2020/10/07(水) 13:36:22.80:c/M6qzGj ギャップを知るためには両方知ってないと無理 : デフォルトの名無しさん [] 2020/10/07(水) 13:43:15.39:EdLJXccd 世間的には現場の定義が優先されるからなー 試験勉強でこう習いましたなんて現場では通用せんぞ : デフォルトの名無しさん [] 2020/10/07(水) 13:48:07.84:EdLJXccd ヤクザにそれは法律違反ですと言っても意味ないだろ 警察に金庫から8000万盗めば良いと言っても通用しないだろ 社会とは現場が常に優先されるものなんだよ 鳥はお空を飛びますと本に書いてあったとしても ペンギンは鳥だから空を飛べば良いと言ってもペンギンの現場では通用しないんです : デフォルトの名無しさん [sage] 2020/10/07(水) 13:59:25.63:c/M6qzGj 現場の定義の殆どは試験勉強の定義と一致してるんだが? 違うのは現場ではベンダー定義の用語が追加で使われるぐらいのもん 試験の定義を否定するようなものはない だから今、試験での単体テストの定義と現場が違ってる= え?お前の会社って単体テストって画面のテストのこと言ってのプププ って話をしてるんだろw : デフォルトの名無しさん [sage] 2020/10/07(水) 14:06:44.51:7nLWSAZj 何を「単体」と見なすかに違いがあるだけ 面接でユニットテストは単体テストとは全然違います!ってずっと主張してたやつがいたけど その文化を共有してない会社だと単にヤバいやつ認定されるだけだからやめたほうがいい : デフォルトの名無しさん [sage] 2020/10/07(水) 14:08:17.68:aZrfGhEg あいつマジで理想郷にでも住んでるのか? わかってて煽ってるのかと思ってたけど・・・ 単体テストと言われてxUnitのテストの結果なんてもっていったら 上位会社様にバカにされるぞ バカにされる程度で済めばいいけど他の人に代えてくれってすぐ営業に電話されるよ 商流の末端企業は上位会社様にあわせるしかないんだよ : デフォルトの名無しさん [sage] 2020/10/07(水) 14:12:20.64:aZrfGhEg 現場のベテラン「情報処理技術者試験なんて意味がない」 おまえら「↑みたいな奴がいるから情報処理技術者試験がもっと普及したほうがいい」 現場のベテラン「現場が正。↑は経験積め。やはり情報処理技術者試験は意味がない」 このループが無限に続くだけ 無限ループって怖いね : デフォルトの名無しさん [sage] 2020/10/07(水) 14:14:50.35:c/M6qzGj IPAのいう単体テストがユニットテストのことだからな これが違っていたら、もう常識がわかってないとしか言えないw : デフォルトの名無しさん [sage] 2020/10/07(水) 14:15:55.64:c/M6qzGj どこの現場のベテランがいってんの?w 現場のベテランというか、ちゃんと情報技術を学んでいる人は 単体テスト=ユニットテストになってる 英語と日本語の違いでしかないからね : デフォルトの名無しさん [sage] 2020/10/07(水) 14:16:37.04:RbIdfjjl 上流なのな下流のチェックしない会社とかどこの没落企業だよ。気持ち悪い。 : デフォルトの名無しさん [sage] 2020/10/07(水) 14:19:09.01:RbIdfjjl 国家資格すら取れない三流エンジニアは言うことが違いますね。 国家資格なんておやつ感覚で取るもの。なんで国家資格ごときで必死なんだ。 基本情報技術者試験くらい取れよ。そうすれば単体テストとユニットテストは違うなんて恥ずかしいことは言わなくなるから。 : デフォルトの名無しさん [sage] 2020/10/07(水) 14:23:06.74:RbIdfjjl あ、これ大企業の話な。 大企業の話を妄想で持ち出す馬鹿がいるから警告しとくわ。 あと、権威主義に陥るのやめろ。 : デフォルトの名無しさん [sage] 2020/10/07(水) 14:25:41.93:uJwWalJK ふむ。さすが正しいことを言ってるな ttp://https://www.fe-siken.com/kakomon/16_aki/q53.html モジュール単体テストに関する記述として,最も適切なものはどれか。 単体テストは、プログラムがモジュール単位で正常に動作するかを確かめるテスト工程です。 プログラムの内部設計書に基づいてホワイトボックステストを実施し、要求性能を満たしているかの確認を行います。 間違い 通常はコーディングを行ったプログラマではなく,専任のテスト要員がテストケースを作成し,実行する。 →正解 単体テストは、コーディングを行ったプログラマ自身が実施します。 間違い モジュール間インタフェースは,モジュール単体ではテストできないので,単体テストの対象外となる。 → 正解 実際にモジュールの結合を行うのは結合テストですが、モジュール仕様書に記述されたインタフェースが適切に実装されているかの検証は単体テストの対象です。 間違い モジュール設計書は,正しいことが検証済みであるので,テスト結果に問題があるときは,テストケース又はモジュールに誤りがある。 → 正解 モジュール設計書が誤っている可能性もあります。 正しい モジュール設計書を見ながら,原則としてすべてのロジックパスを一度は通るようなテストケースによって,検証を行う。 → 正しい。単体テストでは、プログラムの内部構造に基づいて、内部仕様がモジュール仕様書通りに作成されているかを検証します。 : デフォルトの名無しさん [] 2020/10/07(水) 14:48:30.14:EdLJXccd 気にしすぎでしょwww大企業ですまんなwwwww : デフォルトの名無しさん [] 2020/10/07(水) 14:51:24.01:EdLJXccd 良いこと言うね! 自然言語は文脈依存だから同じ語句であっても文脈に応じて意味が変わるからね それを理解せずに自分の定義でしか言葉を解釈しない人はコミュニケーション能力が不足してるってことになるよね : デフォルトの名無しさん [] 2020/10/07(水) 14:51:56.20:EdLJXccd おいペンギン共、お空は飛べたのか? : デフォルトの名無しさん [] 2020/10/07(水) 15:18:14.82:EdLJXccd IPAって経産省の手先団体だろ、なんでそんなところを頼ってるんだwww 職員がお仕事中に児童ポルノダウンロードしてウイルス感染したところじゃねえかwwwww wwwwお前らwwwwwマジかwwwwww : デフォルトの名無しさん [sage] 2020/10/07(水) 15:41:13.02:uJwWalJK じゃあお前は何に頼ってるんだよw : デフォルトの名無しさん [sage] 2020/10/07(水) 15:42:20.87:uJwWalJK 文脈を明らかにしろ。どの会社での話なのか、世間一般の話なのかはっきり区別しろ 俺は世間一般の定義の話をしている それ以外なら特定の会社名を言うようにw : デフォルトの名無しさん [sage] 2020/10/07(水) 15:48:58.67:7nLWSAZj >要求性能を満たしているかの確認を行います。 ここでの「要求性能」ってどういう意味? 間違いじゃなくて一般的な使われ方? : デフォルトの名無しさん [] 2020/10/07(水) 16:07:10.79:EdLJXccd 自分ですかね : デフォルトの名無しさん [] 2020/10/07(水) 16:07:52.19:EdLJXccd 文脈を察しろ常に俺が正しいと考えていただきたい : デフォルトの名無しさん [] 2020/10/07(水) 16:09:05.37:EdLJXccd 俺が言ってることが正しくなるように解釈することを心がければ 俺の文脈を知ることができます、俺が中心です : デフォルトの名無しさん [] 2020/10/07(水) 16:11:05.18:EdLJXccd 児童ポルノウイルス団体を頼りにするとはwwwww お前らも所詮経産省の掌の上で弄ばれてるだけかwwwww : デフォルトの名無しさん [] 2020/10/07(水) 16:14:38.96:EdLJXccd 性能は性質と能力のことなので ・要求される性質がありますか ・要求される能力がありますか ってことを確認するってことじゃろう 一般的に伝わると考えて差し支えない : デフォルトの名無しさん [sage] 2020/10/07(水) 16:15:57.46:+yUuwD4N 「プログラムの内部設計書に基づいてホワイトボックステストを実施し」と書いてあるだろ : デフォルトの名無しさん [sage] 2020/10/07(水) 16:16:14.29:RbIdfjjl 単体テストは内部設計におけるテストだから、内部設計がある程度まともかどうかって意味では。 そのある程度のラインはテスト仕様次第だが。 : デフォルトの名無しさん [sage] 2020/10/07(水) 16:16:49.33:+yUuwD4N プログラムの内部設計書に基づいてテストするんだから プログラムの内部設計書に書いてあることが要求 : デフォルトの名無しさん [sage] 2020/10/07(水) 16:20:54.94:+yUuwD4N ○○に基づいてテストを実施すると書いてあるわけで そこで○○に書いてないことを確認するわけがないのは当たり前の話 : デフォルトの名無しさん [] 2020/10/07(水) 16:30:04.05:EdLJXccd それはそう 「満たしている」の主語は「プログラムが」 テストの確認を行うのはテストレビューだからね 単体テストの説明としてふさわしくない : デフォルトの名無しさん [sage] 2020/10/07(水) 17:00:30.61:7nLWSAZj 内部設計がある程度まともかどうかをどうやってテストするのかわからないけど それって単体テストとは一般的には呼ばなくない? ひっかかるのは「要求」じゃなく「性能」のほう 時間効率・資源効率的ないわゆるパフォーマンスの意味ではなさそうだし 機能+非機能要求全部込みの「性質+能力」の意味だとすると単体の範囲を超える それにホワイトボックスでもなくなる : デフォルトの名無しさん [sage] 2020/10/07(水) 17:18:28.23:+yUuwD4N テストレビューは、テストが妥当かどうかは判断するレビューであって プログラムの内部設計に基づいたテストのことじゃない プログラムの内部設計に基づいたテスト・・・になってるかどうかを判断するのがテストレビュー : デフォルトの名無しさん [sage] 2020/10/07(水) 17:18:58.91:+yUuwD4N > ひっかかるのは「要求」じゃなく「性能」のほう 内部設計にパフォーマンスが書いてあれば そのとおりかテストするのも単体テスト : デフォルトの名無しさん [sage] 2020/10/07(水) 17:20:06.15:+yUuwD4N 訂正 内部設計に性能が書いてあれば そのとおりかテストするのも単体テスト 正しく動いていても、性能を満たしていない例なんて いくらでもある。遅い。メモリ消費量が多い : デフォルトの名無しさん [sage] 2020/10/07(水) 17:21:44.35:RbIdfjjl > 内部設計がある程度まともかどうかをどうやってテストするのかわからないけど > それって単体テストとは一般的には呼ばなくない? 内部設計をテストするのが単体テストなんだけど。逆に、何をテストするものだと思っているんだ? の基本情報技術者試験の解説にコーディングを行ったプログラマ自身がテストしますって書いてあるでしょう? 単体テストをやったことある人なら、これを見たときにピンとくる。 というか、具体例を考えればいいんだよ。 Stackというコンテナライブラリを貴方が作ったとして、そのStackライブラリが絶対大丈夫であることを保証するためには何をする?って話。 : デフォルトの名無しさん [sage] 2020/10/07(水) 17:35:57.38:+yUuwD4N 画面、ウェブ業界なら1ページ これより小さい単位を知らんでしょう 関数を自分で作ることをしない ボタンをクリックとかしたらフレームワークが 関数を呼び出すから、その関数の中身を書くだけ その結果は画面に表示されるから どうやってテストするのかわからない 見て判断するしかないじゃないか! と言っている : デフォルトの名無しさん [sage] 2020/10/07(水) 17:38:01.70:RbIdfjjl webかー。 そもそも、それ、単体テストではなくUIテストでは? : デフォルトの名無しさん [sage] 2020/10/07(水) 17:39:26.58:RbIdfjjl 誤って送信してしまった... UIテストって言葉は俺らローカルかもしれないのに...。まぁ、言い訳を考えさせてくれ。 : デフォルトの名無しさん [sage] 2020/10/07(水) 17:43:05.65:+yUuwD4N UIテストだからエビデンス(スクショ)でテスト とかいうわけのわからない理屈が出てくるw スクショ見て、よくわからんけどちゃんと動いてるっぽいなヨシッ! これがテストw : デフォルトの名無しさん [sage] 2020/10/07(水) 17:43:23.76:7nLWSAZj 「プログラムの内部設計書に基づいてホワイトボックステストを実施し、要求性能を満たしているかの確認を行います。」 パフォーマンスの性能のことだとすれば、性能以外は確認しない感じの文章になる 普通に間違いっぽいね : デフォルトの名無しさん [sage] 2020/10/07(水) 17:45:11.17:+yUuwD4N > パフォーマンスの性能のことだとすれば、性能以外は確認しない感じの文章になる お前が言ってる性能以外とは? まずそれを言わないと、お前の文章に説得力はないよね : デフォルトの名無しさん [sage] 2020/10/07(水) 17:50:43.02:+yUuwD4N 説得力と言うよりか、議論の対象にすらならないと言うべきか : デフォルトの名無しさん [sage] 2020/10/07(水) 17:53:47.55:RbIdfjjl 基本的にWeb開発と同じくネイティブアプリ開発者もUIは作る。それがHTMLではないだけで、成果物の全体を見ると同じ。 ネイティブアプリ(iOS,android,Windows)を作るとき、必ずやるのがロジックとUIの分離。 UIにUIが使いまわし出来なくなるような処理を書かないようにするのが原則で、基本的にはUIと切り離れたロジックの部分を単体テストする。 ...で、ここからが問題で、じゃあ、UIはどうやってテストするの?って話か...。 俺はこれを別工程として扱っているけど、その解釈が一般的かと言われると...うーん。 そして、webフロントエンドはロジックを記述すること自体殆ど無いからな...。webフロントエンドは殺風景なhtmlが組める程度のニワカ知識しかないが...。 ちなみに、自分はUI専用のテストコードを書いてそこだけ手作業でやってるわ...。 合否判定は自動的に出力するようにしてるけど。 で、それをwebでどうやるのかだと?ごめん、わからん。 : デフォルトの名無しさん [sage] 2020/10/07(水) 17:55:25.01:+yUuwD4N > ...で、ここからが問題で、じゃあ、UIはどうやってテストするの?って話か...。 いや、そんな話してないw 単体テストの話をしてるのに、エビデンス?手動?スクショがテスト??? アホじゃねwwwって話をしてる : デフォルトの名無しさん [] 2020/10/07(水) 18:02:55.08:aZrfGhEg マジレスすると自動で行う単体テストだってエビデンスの為にスクショ取るし 自動でやるのが非効率なら手動の場合もあるよね xUnitテストの結果をエクセルに貼り付けるのもいいけど やっぱ信用性を考えるとスクショのほうがテンション高い : デフォルトの名無しさん [sage] 2020/10/07(水) 18:07:00.89:+yUuwD4N > エビデンスの為にスクショ取るし テストのためにスクショ取る じゃないところが重要な点だなw 結局の所、ただの作業報告書でしかない : デフォルトの名無しさん [sage] 2020/10/07(水) 18:08:06.20:+yUuwD4N > xUnitテストの結果をエクセルに貼り付けるのもいいけど え?なんのために? 標準のXMLでいいだろ ああ、作業報告書ね(苦笑) とこうなる : デフォルトの名無しさん [sage] 2020/10/07(水) 18:16:00.27:A5i/ayff どことは言わないが、未だにテスト結果をすべて印刷してスタンプラリーしてバインダーに格納してる大手電機メーカーがあるんだよ。 その時にXMLじゃ分からないって押印してくれなかったり。 : デフォルトの名無しさん [sage] 2020/10/07(水) 18:18:14.37:RbIdfjjl まぁ、スクショ貼る会社はあると思う。 お役所と仕事していると面倒な完成図書(紙媒体)も求められるし。 こんなテスト結果、あなた達が貰ってどうするの?って奴まで求められるし。でも、まぁ、彼らにとっては意味があるから仕方ないね。 ただ、誰もエビデンスを求めていないのにマニュアルに従いやれって言われると少し残念な気分になる。 利害関係者次第だな。 : デフォルトの名無しさん [sage] 2020/10/07(水) 18:21:39.93:+yUuwD4N それはテスト工程じゃないよねって話 : デフォルトの名無しさん [sage] 2020/10/07(水) 19:02:18.32:A5i/ayff いやそれも含めてテスト工程。 他にそれを含められる工程がない。 : デフォルトの名無しさん [sage] 2020/10/07(水) 19:05:41.03:OA8Qggd8 それ間違っていても絶対分からないから 手抜きし放題になるのでは : デフォルトの名無しさん [sage] 2020/10/07(水) 19:10:34.07:+yUuwD4N じゃあお前の所は納品作業は何工程になるの? : デフォルトの名無しさん [sage] 2020/10/07(水) 19:25:27.20:7fnYlcJW まともにプロセス定義していれば、 受注プロセス→開発プロセス→納入プロセス であって、 開発プロセスの中が設計だの製造だのテストといった工程定義が されているはず。 そんなことも知らないというのは、かなりまずい。 : デフォルトの名無しさん [sage] 2020/10/07(水) 19:26:39.83:+yUuwD4N テスト結果を納入する作業は テスト工程なんですよとか言いそうだよなw : デフォルトの名無しさん [sage] 2020/10/07(水) 19:26:42.00:r+XQDTLB だから現場を知ってからそういうこといいなよ でかい案件ではどこもほとんど確実に単体テスト≒画面のテストだよ メソッド単位で単位テストなんて言い張ってたらいつまでたっても終わらない プロジェクトをすすめるには画面を単位と言うしかない ちっぽけな案件だったら教科書的な定義にしたがって優等生気取りながら仕事することもできるけどな : デフォルトの名無しさん [sage] 2020/10/07(水) 19:27:54.61:+yUuwD4N > でかい案件ではどこもほとんど確実に単体テスト≒画面のテストだよ そういわれても検証できないんで、 でかいオープンソースプロジェクトの話でもしてくれませんかね? 狭い世界の話をされてこ困ります。 : デフォルトの名無しさん [sage] 2020/10/07(水) 19:32:22.60:07qTsl16 オープンソースwwww 日本の大規模案件でオープンソースなんて激レアだろ そんなの見たってなんの参考にもならん 現場を知りたけりゃ現場に潜り込む それしかねえんだよ : デフォルトの名無しさん [sage] 2020/10/07(水) 19:33:57.77:aZrfGhEg おいおい それでいくと納入プロセスまで客は何も目にしない事になるぞ? : デフォルトの名無しさん [sage] 2020/10/07(水) 19:35:01.87:+yUuwD4N > 日本の大規模案件でオープンソースなんて激レアだろ じゃあ小規模案件でもいいですが 今の論点は、狭い世界かどうかの話ですよ? 広い世界の話をしなきゃ意味がないでしょうw : デフォルトの名無しさん [sage] 2020/10/07(水) 19:41:09.64:aZrfGhEg 単体テストって言葉を作った大手がそもそも単体テスト=画面テストで使ってるという皮肉な現状がね : デフォルトの名無しさん [sage] 2020/10/07(水) 19:41:51.18:7fnYlcJW 請負ってそういうものだよ。 みたけりゃ中間納品でも設定すればいいだけ。 現実にはそんな法定義に杓子定規に運用してたらリスクしかないから どこも工程完了基準みたいなのを設けて移行判定を顧客に委ねたりしてるでしょ。 : デフォルトの名無しさん [sage] 2020/10/07(水) 19:44:12.59:+yUuwD4N 大手が日本の会社だと思ってる? ttp://https://employment.en-japan.com/engineerhub/entry/2019/10/03/103000 「単体テスト」という言葉が初めて世に出てくるのは、 1970年の『Managing the Development of Large Software Systems』という論文に遡ります1。 : デフォルトの名無しさん [] 2020/10/07(水) 19:44:12.91:EdLJXccd 誰にぬかしとんじゃおらー : デフォルトの名無しさん [sage] 2020/10/07(水) 19:45:15.86:RbIdfjjl 今までの話を聞いてた? 単体テスト=画面のテストは違うだろ。 そもそも単体テストの意味を盛大に勘違いしているのは君だけでしょ。 国家資格の基本情報技術者試験の件はどう反論するんだ? : デフォルトの名無しさん [] 2020/10/07(水) 19:48:46.17:EdLJXccd 小保方さんは研究ノートをろくに取ってなかったから批判されたんやで そこんとこよーく考えた方がお前のため : デフォルトの名無しさん [sage] 2020/10/07(水) 19:49:03.66:r+XQDTLB なんで英語論文に単体テストって日本語が出てくんだ? いいかげん単体テストとUnit Testを区別したらどうだ ここは日本だから日本の習慣に習うべきだ : デフォルトの名無しさん [] 2020/10/07(水) 19:49:35.77:EdLJXccd 国家資格は児童ポルノウイルス試験でしか無いってことだと思います! : デフォルトの名無しさん [] 2020/10/07(水) 19:50:14.16:EdLJXccd Unitは単体って意味なんよ Unitを日本語で書くと単体なの 英語勉強して : デフォルトの名無しさん [sage] 2020/10/07(水) 19:52:52.79:+yUuwD4N ユニットテストを翻訳したものが単体テストです それ以外の定義はありません : デフォルトの名無しさん [] 2020/10/07(水) 19:54:49.52:EdLJXccd TDDはアスペ用のものだしなー 健康な人が水素吸入しても健康にならないようなもので まともなプログラマにUnit Testは要らんのですわ 英語にびびったアホジャップがUnit Testはスゴイものだと思い込んだだけで 実際のところUnit Testやってもやらなくてもシステムの品質は変わらんから コストかかるぶんマイナスなんよねー : デフォルトの名無しさん [] 2020/10/07(水) 19:56:03.40:EdLJXccd そうでもないやで 大企業で仕事してみ、単体テストはintergration testingの意味ですから : デフォルトの名無しさん [] 2020/10/07(水) 19:56:53.49:EdLJXccd Unit Test -> 単体テスト これはわかる 単体テスト -> Unit Test これは成り立たない : デフォルトの名無しさん [sage] 2020/10/07(水) 19:58:21.24:+yUuwD4N 大企業が間違ってることぐらい知ってますよ(笑) 会社がでかいだけで、ソフトウェア開発の専門じゃないですからね 大規模の意味はソフトウェアの規模が大きいんじゃなくて 単に作業員が多いだけだったりするしwwww マイクロソフトは世界最大規模のソフトウェア会社の 1つだって言っても納得しないでしょ? : デフォルトの名無しさん [sage] 2020/10/07(水) 19:58:26.92:RbIdfjjl 国家資格である基本情報技術者試験は日本の風習から乖離していると。 そんな馬鹿な。 むしろ、単体テストという言葉がUnit testと乖離している日本独自の風習があるのなら、参考文献を貼り付けてくれないかな。 調べても単体テスト=ユニットテストの解釈での説明しか出てこないのだが。 あと、一部、共有NGであぼーんされている人がいるけど、その人の回答ではなく貴方の意見が知りたいな。 : デフォルトの名無しさん [sage] 2020/10/07(水) 19:58:53.17:+yUuwD4N > 単体テスト -> Unit Test > これは成り立たない おまえん中ではなwww : デフォルトの名無しさん [] 2020/10/07(水) 20:00:17.52:EdLJXccd おいおいお前、一部上場の前でなんてこと言うんだ : デフォルトの名無しさん [] 2020/10/07(水) 20:00:55.19:EdLJXccd あぼーん : デフォルトの名無しさん [sage] 2020/10/07(水) 20:01:49.19:+yUuwD4N もしかし会社がでかいと、ソフトウェア専門会社だとおもっちゃった口ですか?w : デフォルトの名無しさん [] 2020/10/07(水) 20:02:37.38:EdLJXccd 俺 = 一部上場のITゼネコン大企業 一部上場のITゼネコン大企業 = 日本のIT よって俺の常識は日本ITの常識 : デフォルトの名無しさん [] 2020/10/07(水) 20:03:09.60:EdLJXccd え? どういう意味? ちょっと何いってんのかわからない : デフォルトの名無しさん [sage] 2020/10/07(水) 20:03:16.25:+yUuwD4N ようやく世界が狭いと認めたね : デフォルトの名無しさん [] 2020/10/07(水) 20:04:56.37:EdLJXccd 日本は広いよ、日本語話者の国全域に及んでますからね ここは日本だ、日本の常識で話しをしよう、単体テストとはIntergration Testingのことなり! : デフォルトの名無しさん [] 2020/10/07(水) 20:06:43.56:EdLJXccd Intergration Testingだからエビデンスを取るわけ Unit Testでエビデンス取るわけ無いだろwww常識で考えろよwwww スレタイ見て出直せよwwwwwwなんでUnit Testなんだよあれは認知障害者が使うもの : デフォルトの名無しさん [sage] 2020/10/07(水) 20:06:43.59:+yUuwD4N 自分で 一部上場のITゼネコン大企業特有の話とか言っておいて 日本の常識にすり替えるなよ 基本情報技術者試験の方がよっぽど日本の常識だ : デフォルトの名無しさん [sage] 2020/10/07(水) 20:08:08.84:+yUuwD4N × Intergration Testingだからエビデンスを取るわけ ○ テスト作業を行ったいう証拠を提出しないといけないから、テストしたというエビデンスを取るわけ ちゃんと書こうね : デフォルトの名無しさん [] 2020/10/07(水) 20:09:26.82:EdLJXccd でこれ以上なくはっきりと論理展開してみせましたけど 基本情報とか噴飯ものだわwwwwwwペドロリの資格とって経産省に認められてどうするんだwwwwwwww すまんな俺は環境省の味方だから俺は環境省の味方です : デフォルトの名無しさん [] 2020/10/07(水) 20:11:06.36:EdLJXccd 同じことですよ、相互に排他的な事柄ではないです 研究者が研究を行った証拠を示すのが研究ノートのみであるように プログラマがテストを行った証拠もやはりエビデンスのみなわけです エビちゃん大事 : デフォルトの名無しさん [sage] 2020/10/07(水) 20:11:16.73:+yUuwD4N 論理展開じゃなくて単なる主張w それが「論理展開」だっていうのなら、これも成り立つ お前 = 一部上場のITゼネコン大企業 一部上場のITゼネコン大企業 ≠ 日本のIT よってお前の常識は日本ITの常識ではない : デフォルトの名無しさん [] 2020/10/07(水) 20:11:28.15:EdLJXccd お前らスタップ細胞でも探しとけwwwww : デフォルトの名無しさん [sage] 2020/10/07(水) 20:12:13.70:aj7kCTl6 直訳すりゃいいってもんじゃない とくにテクニカルタームはそう : デフォルトの名無しさん [sage] 2020/10/07(水) 20:12:16.17:+yUuwD4N > 研究者が研究を行った証拠を示すのが研究ノートのみであるように 研究ノートは他の人がそれだけをみて再現できることが条件です その条件を満たしてないから小保方のやつは研究ノートとは認められなかったわけです。 : デフォルトの名無しさん [] 2020/10/07(水) 20:12:31.95:EdLJXccd > 一部上場のITゼネコン大企業 ≠ 日本のIT ここが間違ってるので成り立たないのは明らかですよん 日本のITを仕切ってるからゼネコンと呼ばれるわけ ゼネコンの意味を調べたが良い、ゼネコンはすごいんだぞ : デフォルトの名無しさん [] 2020/10/07(水) 20:13:13.90:EdLJXccd じゃあなんですか!? 超訳しろとでも言うんですか? : デフォルトの名無しさん [sage] 2020/10/07(水) 20:14:04.77:+yUuwD4N 小保方氏ようやく「実験ノート」公開するも… 専門家「理科の観察日誌?」「ものすごい破壊力」 ttp://https://www.j-cast.com/2014/05/08204189.html > 理化学研究所の小保方晴子氏が記した実験ノートの一部が、代理人弁護士らによって2014年5月7日、 > 公開された。小保方氏は「ちゃんと実験していることを示したい」として公開に踏み切ったと報じられている。 > > ところが、具体的な実験条件などが不足した内容に、研究者や識者からは疑問の声が噴出している。 > > 「陽性かくにん!よかった。」 まさにエビデンスそのものw 「テストOKだった。よかった。」 : デフォルトの名無しさん [sage] 2020/10/07(水) 20:14:53.04:aj7kCTl6 UnitTestを正確に表現する日本語は今のところ、無い UnitTestはUnitTestと言うしかない 単体テストと言ったらUnitTestとは別の意味になる : デフォルトの名無しさん [] 2020/10/07(水) 20:15:05.66:EdLJXccd 再現するための手順はプロトコル・・・ 研究ノートは研究を行ったエビデンスなんよ エビがいい加減だったからよろしくなかったのは事実だけどね : デフォルトの名無しさん [sage] 2020/10/07(水) 20:15:10.03:+yUuwD4N > ここが間違ってるので成り立たないのは明らかですよん 間違ってないですよ これがお前の言う「論理展開」ですからね。 それともお前自身の「論理展開」に根拠が書かれてないってことに気づきましたかね?w : デフォルトの名無しさん [sage] 2020/10/07(水) 20:15:54.52:+yUuwD4N > 研究ノートは研究を行ったエビデンスなんよ 今日は研究をした。陽性確認した。良かった。研究ちゃんとした。エビデンス。 : デフォルトの名無しさん [] 2020/10/07(水) 20:15:59.81:EdLJXccd せやろ、エビデンスを軽視するものには天の裁きがくだされるわけではないけれども エビデンス大事だよねってことですよね : デフォルトの名無しさん [] 2020/10/07(水) 20:16:46.40:EdLJXccd 君を小保方くんの後継に指名しよう : デフォルトの名無しさん [sage] 2020/10/07(水) 20:17:07.64:+yUuwD4N エビデンスが大事って? 大事なのはソフトウェアが正しく動くことだろ : デフォルトの名無しさん [] 2020/10/07(水) 20:17:53.43:aZrfGhEg 海外を参考に「単体テスト」って言葉を作ったんだよ 外国人が「タンタイテストゥ」とか言ってるわけないでしょ、アホかw 国内大手ベンダーが先行してIPAが後追いで追認してきたのが今までの歴史でしょ ソフ開持ちなので試験に出てくる意味での単体テストは完全に把握してるぞ あれはあれ、これはこれ : デフォルトの名無しさん [] 2020/10/07(水) 20:19:03.50:EdLJXccd 別の意味ってどういう意味なんですか? にんじんを野菜と言っても良いようにUnit Testはテストと言っていいし単体テストと言って問題ないでしょう やってることだけ見れば認知テストとかでも良いかもしれないですね : デフォルトの名無しさん [] 2020/10/07(水) 20:19:49.69:EdLJXccd ____ / \ / ─ ─\ / ⌒ ⌒ \ ハハッワロス | ,ノ(、_, )ヽ | \ トェェェイ / / _ ヽニソ, く : デフォルトの名無しさん [] 2020/10/07(水) 20:21:17.55:EdLJXccd トゥメイトウ : デフォルトの名無しさん [] 2020/10/07(水) 20:21:18.84:aZrfGhEg エビデンス=納品物 ソフトウェアが正しく動く事=納品物ではない どっちが大事かは明らか : デフォルトの名無しさん [sage] 2020/10/07(水) 20:21:40.96:+yUuwD4N ほらみんな、この程度のレベルだって分かったろ?w : デフォルトの名無しさん [] 2020/10/07(水) 20:21:56.91:EdLJXccd そこの君、良いこと言った : デフォルトの名無しさん [sage] 2020/10/07(水) 20:22:31.15:+yUuwD4N どっかの大会社はスクショをの納品して 動くソフトウェアを納品ないらしいねw : デフォルトの名無しさん [sage] 2020/10/07(水) 20:23:08.98:+yUuwD4N あ、せっかくぼかしたのにwww : デフォルトの名無しさん [] 2020/10/07(水) 20:24:14.97:EdLJXccd 動けば良いってもんじゃない : デフォルトの名無しさん [sage] 2020/10/07(水) 20:24:40.16:+yUuwD4N しかしマジでエビデンスを納品して ソフトウェアを納品しない会社があるとはねw : デフォルトの名無しさん [] 2020/10/07(水) 20:27:07.60:EdLJXccd 顧客が本当に欲しかったものはエビデンスだったんですよー : デフォルトの名無しさん [] 2020/10/07(水) 20:28:41.49:EdLJXccd このスレでもソースは? 文献は? ってしきりに聞く人がいるでしょ エビデンスっていうのは万人に共通する価値基準でありアイデンティティの強化する アイテムとしてやはりIT業界の顧客にはそういう人があれですねー : デフォルトの名無しさん [] 2020/10/07(水) 20:30:23.54:EdLJXccd Unit Testがプログラマの自己満足であるのに対して Integration Testは顧客満足なんです プロダクトとしてどちらを重視すべきかは明らかですね : デフォルトの名無しさん [sage] 2020/10/07(水) 20:32:08.81:RbIdfjjl む。そうか。 NGが働く前に変なやつのレスを見たからミスリードしたかな。 : デフォルトの名無しさん [] 2020/10/07(水) 20:32:56.53:EdLJXccd NGアピールうぜえよwwwww : デフォルトの名無しさん [] 2020/10/07(水) 20:33:24.08:aZrfGhEg 納品日に持っていくのは大量に印刷したエビデンス そしてマニュアル あと仕様書だか設計書だかそんな感じのタイトルも覚えてないような書類 そして一番大事なソフトウェアはCD-Rに書き込んで、自社のロゴ入りの紙袋に入れて数人で運び出しうやうやしく納品 客もマジメな顔して印刷物をみて「ここの文字が間違ってる」とか言ってる そしていつの日か時間がたち、ふとCD-Rを見てみると新品 そう、書き込みするのを忘れていたのだ!! : デフォルトの名無しさん [] 2020/10/07(水) 20:34:58.63:EdLJXccd 素直になれよ本当は俺様のレスが見たいんだろwwwww 俺様の知性あふれるレスポンスに心がふるえて恋しちゃってるんだろwwwwww wwwwwwお友達から始めよう : デフォルトの名無しさん [] 2020/10/07(水) 20:36:01.64:EdLJXccd COBOL系の仕事でその伝説は聞いたことがある : デフォルトの名無しさん [sage] 2020/10/07(水) 20:36:05.59:+yUuwD4N > プロダクトとしてどちらを重視すべきかは明らかですね ああ、どちらか一方だと思ってるのか 両方だろ こりゃだめだwww : デフォルトの名無しさん [sage] 2020/10/07(水) 20:37:43.50:HrzH1nM7 いつも正しく動いたら誰も苦労しないんやで。 必ずしも正しく動かないからこそ責任逃れのためのエビデンスが必要なんやで。 : デフォルトの名無しさん [] 2020/10/07(水) 20:39:26.68:EdLJXccd プログラマの自己満足を重視してどうすんだハゲwwwwダメなのはお前の頭だwwwww Unit Testは認知能力に欠陥のある人間のために考案されたエクササイズ的な位置づけなわけ Unit Testが発明されたアメリカのITの歴史を見れば火を見るよりあきらか Unit Testを発明した人間がいまどうなってるか調べて見ると良い : デフォルトの名無しさん [] 2020/10/07(水) 20:43:08.63:EdLJXccd エビデンスで責任逃れはできます みなさんも数兆円を動かすような重責を担う仕事についたらエビデンス残すと良いよ 一部上場のITゼネコンでバリバリ仕事こなしてる俺からのアドバイス 頭の片隅に置いて困ったときに思い出したら良いよ : デフォルトの名無しさん [] 2020/10/07(水) 20:44:20.76:EdLJXccd 責任は負えば良いってものじゃないリスクヘッジ大事、エビデンス大事、いざというときの保険 : デフォルトの名無しさん [sage] 2020/10/07(水) 20:45:07.89:aZrfGhEg ソフトが動くかどうかなんて些細な問題であって業務が動き続けばいいんだよ 不具合が出るのがわかってたら客に 「印刷ボタン押したらバグるので、こっちのPDFボタン押してから印刷してください」 って通達しときゃいい もしオペレーターが間違えたら、高菜を食べた客をラーメン屋が咎めるような口調で 「どうして印刷ボタンなんて押したんですか!」って言えばいい オペレーターだって安くない給料貰ってるんだから、手順書更新したらちゃんとその通り動かしてくれるよ : デフォルトの名無しさん [] 2020/10/07(水) 20:45:21.18:EdLJXccd 君たちがバカにしてるエビちゃんも仕事を円滑に回すための一つのツールなんですねー : デフォルトの名無しさん [sage] 2020/10/07(水) 20:46:01.60:MEnF5vzo 前提条件を満たしていればいつも正しく動くものを作るためにテストするんやぞ : デフォルトの名無しさん [] 2020/10/07(水) 20:46:48.48:EdLJXccd 良いこと言った、そのとおり : デフォルトの名無しさん [sage] 2020/10/07(水) 20:52:55.64:HrzH1nM7 前提条件満たした状態ではちゃんと動いていたことを証明するのがエビデンスやでぇ。 想定外のことをされてバグっても「バグが出た前提条件のテスト項目がないのに承認した貴方にも責任がある」と言うためのエビデンスやで。 : デフォルトの名無しさん [] 2020/10/07(水) 20:55:57.33:aZrfGhEg 「テストの時は動いてたんですけどねー」 「ログ出力を設定してちょっと様子みてみましょうか」 「再発した時の手順書を追加しておきますね」 : デフォルトの名無しさん [] 2020/10/07(水) 20:58:16.33:EdLJXccd これは有能なプロジェクトマネージャ 無能な奴は客の言うなりになってシステムを肥大化させて赤字にする : デフォルトの名無しさん [sage] 2020/10/07(水) 21:12:48.59:vndR91+l せやな。現実はそういう証拠も要求されるよな。自己主張ばかりしていないでエビデンスを要求する人の立場と気持ちを考えればいい。 利害関係者はプログラマーだけじゃないだろうに。 そういう不具合を防ぐための単体テスト 単体テスト的には些細な問題と言い切るべきではないと思う。 設計が糞すぎてコードの修正に時間が掛かるのが理由だとしたら、ますます単体テストで安定するコードの設計を促せなかった罪は大きい。 : デフォルトの名無しさん [sage] 2020/10/07(水) 21:21:53.01:y9cyKaAw ドカタ vs ドカタのマウンティンスレになったな 中身が無さ過ぎて泣ける : デフォルトの名無しさん [] 2020/10/07(水) 21:27:37.91:EdLJXccd 底辺コーダー単体テストの夢を見る : デフォルトの名無しさん [] 2020/10/07(水) 21:28:38.51:EdLJXccd わいは一応製品開発部部長だからどちらかというと1級建築士ですかね : デフォルトの名無しさん [] 2020/10/07(水) 21:35:10.23:EdLJXccd 社内で実験や研究はやったがUnit Testはユーザ満足度をあげるほど製品品質を左右しないんよねー 現代の開発は統合開発環境や静的検査、動的検査が整備されてコーディングミスはほとんど起きないってことと 単純にうちの社員が優秀ってのもあるだろうが、コーダが書くUnit Testに意味はないとうちの部署では結論した : デフォルトの名無しさん [] 2020/10/07(水) 21:38:29.34:EdLJXccd システムテストが良い、あれはシステムの品質も社員の質も上がる 業務要件もシステムのアーキテクチャも理解してないと観点出しもテストケース作ることさえできないから システムテストはおすすめ、社員の実力が底上げされる : デフォルトの名無しさん [sage] 2020/10/07(水) 22:22:20.12:+yUuwD4N 以上ドカタの独り言でした(笑) : デフォルトの名無しさん [sage] 2020/10/07(水) 23:03:30.00:MKuB1ZsU ガチガチに後方互換性を守りたい場合はUnitTestしてもいいかもね ライブラリメーカーとかならいいんじゃないの : デフォルトの名無しさん [sage] 2020/10/07(水) 23:14:33.59:LK1LuHNw > ガチガチに後方互換性 言い方がおかしい。たいていはバージョンが有るようなものじゃないんだからさ この場合は、何らかの理由で修正を入れたときに、エンバグしないように ガチガチにテストするということだろ 修正なんてどうしてもはいるんだからさ、ガチガチにテストしておかないとだめやろ? 修正したときのエンバグ防止を、ガチガチな後方互換性と言ってるなら わからなくもないけどさ。エンバグしないってことは、ガチガチな後方互換性とも言えるからね : デフォルトの名無しさん [] 2020/10/08(木) 11:16:14.56:6clXcWBV いまさらどうでも良い話だが 手動か自動かなんて本質とは何の関係も無いぞ 信頼性はテストケースを網羅出来てるか出来てないかだけだ : デフォルトの名無しさん [] 2020/10/08(木) 12:00:25.90:Pr6ASxb2 何の本質? : デフォルトの名無しさん [sage] 2020/10/08(木) 12:37:21.94:bBuM66mL EdLJXccd kZm+fu8v IgGP+BQU ycF3TYue 4yJ9ltzt このスレが盛り上がった原因は主にこいつらか。 厶板にも隔離病棟が必要な気がしてきた。 : デフォルトの名無しさん [sage] 2020/10/08(木) 12:49:41.09:NhC81FQJ テストをしなくてもいいぐらい小さく簡潔なプログラムブロックを作り組み合わせる 組み合わせで間違いが起こらないように関数型の知見を応用する これだけでいい これができてればバグなんて入りようがないから、テストほとんど意味ない : デフォルトの名無しさん [sage] 2020/10/08(木) 18:54:00.48:LEhNWUbi 大の大人が10時から21時までずっと書き込みをしてるのを見ると悲しくなる : デフォルトの名無しさん [sage] 2020/10/09(金) 11:04:06.44:TRjG/vuN 単体テストは一般的にもIPA的にも機能性にフォーカスしたテストだからその記述は誤り ここはそんな基本的なことも知らない奴らが一日中無意味な雑談をするスレなのでまともな回答を期待してはいけない : デフォルトの名無しさん [sage] 2020/10/09(金) 11:43:22.54:8qJEmYsV > 単体テストは一般的にもIPA的にも機能性にフォーカスしたテストだからその記述は誤り 理由は 単体テストは、機能性にフォーカスしたテストであり プログラムの内部設計書に基づいてホワイトボックステストを実施し、要求性能を満たしているかの確認を行います。 間違ってないよね? : デフォルトの名無しさん [sage] 2020/10/09(金) 11:47:34.84:tUZvClkH 個性あふれる文化の前には定義など無意味。 単体テスト=コードレビューという場所だってあるんだぜ。 : デフォルトの名無しさん [sage] 2020/10/09(金) 11:56:10.47:8qJEmYsV その場所がどこか言えるなら、一般的な定義と言えるだろう 企業秘密だから言えるわけないとかいう話なら それは一般的な定義じゃないだろう : デフォルトの名無しさん [sage] 2020/10/09(金) 12:36:02.83:mOpqVRBo 試験勉強に毒されて正しいとされる回答を妄信するパターンだね 社会人になって治る人と治らない人がいるんだけど 治らない人は自分で考える力がないので総じて使えない : デフォルトの名無しさん [sage] 2020/10/09(金) 12:40:07.10:EjYkYVIx 正しい回答とは限らないから、間違ってんだという 根拠をまったく言わずに否定するパターンだね 根拠がないなら主張するのやめたら? : デフォルトの名無しさん [sage] 2020/10/09(金) 12:43:02.32:83iRAGlc この手の議論をする時は国家資格や有名なベンダー資格等で扱う言葉で議論するべき。 そもそも、企業勤めで資格取る奴は経験も十分に積んでるよ。 資格なんて大学受験に比べれば楽すぎる。 なんで、たったの数千円でとれる資格を取らないの? 言葉が共有できない猿が議論に参加すると邪魔だから消えてほしいね。 : デフォルトの名無しさん [] 2020/10/09(金) 12:46:14.62:lC8K76Tw なんで資格を取らないのかって議論にすり替えるのやめてほしい : デフォルトの名無しさん [] 2020/10/09(金) 12:48:03.07:lC8K76Tw 一般的な定義かどうかを議論するのやめてほしい : デフォルトの名無しさん [sage] 2020/10/09(金) 12:48:25.97:83iRAGlc ←こいつが始めた話だろう。 それ以前にも似たような発言がある。 なぜ、そっちに突っ込まない。同一人物か? : デフォルトの名無しさん [sage] 2020/10/09(金) 12:48:37.58:EjYkYVIx 資格を取らなくてもいいよ。 ただし世間一般の常識を知らないと潰しが効かなくなる : デフォルトの名無しさん [sage] 2020/10/09(金) 12:49:44.16:EjYkYVIx > 一般的な定義かどうかを議論するのやめてほしい なぜ?一般的な定義で話をするのは当たり前でしょ? そうでないなら○○の定義ではってちゃんと言うこと 一部でしか使われない定義をいっても通じるわけがないんだから : デフォルトの名無しさん [] 2020/10/09(金) 12:51:35.65:lC8K76Tw >パフォーマンスの性能のことだとすれば、性能以外は確認しない感じの文章になる > >普通に間違いっぽいね 仮定を置いて間違いが導かれるなら仮定が誤りだと結論できる : デフォルトの名無しさん [] 2020/10/09(金) 12:53:40.49:lC8K76Tw 普通は通じるよ、語用論でググってみ、概念と単語を同じものだと思ってるから理解できないんだよ 君のコミュニケーションにおける相手の言葉への不寛容さはアスペと呼ばれてもおかしくないよ : デフォルトの名無しさん [] 2020/10/09(金) 12:56:26.55:lC8K76Tw 言葉の一部を切り取って騒ぐマスコミとやってることは変わらん 文脈からどういう意味で使ってるのが類推して理解するのが普通の人のコミュニケーション 言葉の定義がー定義がーなんてリアルな会話ではやらないでしょ? それをやったら会話にならないと思われるから : デフォルトの名無しさん [sage] 2020/10/09(金) 12:56:54.88:83iRAGlc その普通が通じないから、こんな話になっているってことになぜ気が付かない。 : デフォルトの名無しさん [] 2020/10/09(金) 12:59:02.45:lC8K76Tw 5chはアスペに寛容なコミュニティとも言えるかな : デフォルトの名無しさん [sage] 2020/10/09(金) 13:00:31.33:83iRAGlc 昼休みに話の通じない馬鹿に遭遇するとは思わなかった。 話さえ通じれば何でもいいが、駄目だなこりゃ。 厶板にが過疎化する理由がよくわかったよ。 二度とこの板に来ないほうがいいな。 知的障害者との会話は疲れる。 : デフォルトの名無しさん [sage] 2020/10/09(金) 13:01:02.93:EjYkYVIx そんな話はしてない。通じるかどうかじゃなくて "別の意味として"間違って通じてしまっては意味がないから 一般的な定義の話しようと言ってるだけ : デフォルトの名無しさん [sage] 2020/10/09(金) 13:03:06.66:EjYkYVIx > 言葉の定義がー定義がーなんてリアルな会話ではやらないでしょ? そりゃそうだろw リアルな会話で「俺の会社では」なんて話をしないんだからw : デフォルトの名無しさん [] 2020/10/09(金) 13:20:26.77:lC8K76Tw 通じるわけがないって言ってましたよね、そんなことないですよってこと リアルではしないんだ : デフォルトの名無しさん [sage] 2020/10/09(金) 13:47:09.26:JQ1AMLdD で、その会社文化とやらのテスト分類定義を採用すると、 IPAのテスト分類定義を採用するのに比べてどんなメリットがあるんだい? : デフォルトの名無しさん [sage] 2020/10/10(土) 05:20:40.98:YQJRDE1T 何でこんなスレが伸びてるんだと思ったらあからさまな釣りに釣られてるやつが多かっただけか : デフォルトの名無しさん [sage] 2020/10/11(日) 00:58:37.49:jQvs4XJ7 たんたい‐テスト【単体テスト】 の解説 《unit test》ソフトウエアテストの一。動作対象を小さな単位に分割してテストすることを指す。→結合テスト →ビッグバンテスト : デフォルトの名無しさん [sage] 2020/10/11(日) 01:00:37.45:jQvs4XJ7 言葉の定義は設計書の付録についてくるでしょ リアルな会話でやらない人は上流工程に参加してないだけ : デフォルトの名無しさん [sage] 2020/10/11(日) 01:02:41.18:QQ2vPcGT ソフトウェアの最小単位は画面やページやろ? どうやって1つの関数でテストできるっていうんだ? : デフォルトの名無しさん [sage] 2020/10/11(日) 11:16:33.93:jQvs4XJ7 そうなんだよ 小さい単位だとしか定義されていない 画面は論外としても関数だとは誰も言ってない 昔は暗黙の了解で 単体テスト=関数だった 推測だが CUIアプリの場合:単体テスト=関数 GUIアプリの場合:単体テスト=1機能を実現する為の最小コンポーネント群 という風になってしまったんじゃないだろうか 要するにCUIのC言語アプリなら関数を最小単位にするのは直感的で GUIのVBアプリならテキストボックス+ボタンのセットを最小単位とするのが直感的だった だから自然と2つの意味が併存してしまい しかも実施時には違和感を感じなかった : デフォルトの名無しさん [sage] 2020/10/11(日) 11:39:31.27:rsxmIi7K 結論 無能は関数単位でテストする方法がわからない その方法が存在することを知らない だから実行ファイルを使ってテストすることしかできない : デフォルトの名無しさん [sage] 2020/10/11(日) 11:41:06.19:rsxmIi7K > CUIアプリの場合:単体テスト=関数 無能の場合CUIアプリのテストとは 実行ファイルを実行してテストする 例えばgitの場合、gitのすべてのコマンドを実行してテストする git initをしたらどういうファイルが作成されるかをチェックしている : デフォルトの名無しさん [] 2020/10/11(日) 11:53:56.56:kZXFoyze 対象になってる粒度次第 : デフォルトの名無しさん [sage] 2020/10/11(日) 11:54:31.15:TaKoEgM9 ttp://https://github.com/git/git/tree/master/t gitにgitのユニットテスト乗ってるけど半端ないよなこれ シェルバッチで全部テストしてる : デフォルトの名無しさん [sage] 2020/10/11(日) 12:00:01.38:mzj9OHDg 無能ほど無駄な仕事を多くやろうとする コマンドごとにテストできることをわざわざ関数ごとにテストして膨大な工数を無駄にする しかも関数のテストをしたってコマンドが正しく動作する保証にはならないから関数のテストは意味がない バグが混入しにくい堅牢なコードを書くことに労力をかけて テストはある程度大きな粒度でやったほうがいい 最小限のテストで最大の効果を得ることを考えろ 暇を持て余した学生のお遊びじゃないんだ 業務では工数は限られてる : デフォルトの名無しさん [] 2020/10/11(日) 12:14:15.39:TaKoEgM9 また業務ガイジ湧いてて草 : デフォルトの名無しさん [sage] 2020/10/11(日) 12:24:51.84:mzj9OHDg 無職ガイジ : デフォルトの名無しさん [sage] 2020/10/11(日) 12:26:59.56:j3Pyb3UX CUIとCLIは別やで gitはCLI : デフォルトの名無しさん [sage] 2020/10/11(日) 13:19:41.83:jQvs4XJ7 納品の為のテスト トラブル対応の時間を減らす為のテスト 損害賠償を回避する為のテスト 同じように見えるテストでも目的は色々 目的が変われば手段も変わる : デフォルトの名無しさん [sage] 2020/10/11(日) 18:23:47.93:z7d9ld+N なるほどな 仕様を満たしているか確認するためのテストはしなくていい現場ってのがあるわけだ : デフォルトの名無しさん [sage] 2020/10/11(日) 19:39:47.33:ksbz56K1 その種のテストはなぜか手動でやれとか言い出すのがSIerやで : デフォルトの名無しさん [sage] 2020/10/11(日) 19:47:52.34:jQvs4XJ7 自動テストはダメなの→自動テストが正しい事はどうやって担保するのか→人間のほうが信用できない→自動テスト作ってるのも人間→ふぁ? 人類はこうやって無駄を繰り返してきた そもそも自動テストは繰り返し何度も行う前提 ウォーターフォールであるおまえらの現場では自動テストは相性が悪い : デフォルトの名無しさん [sage] 2020/10/11(日) 19:49:19.76:kFRHzfrM 根本的にわかってないだろw > そもそも自動テストは繰り返し何度も行う前提 テストが一回で終わることなんてありえないよ バグを修正するたびに全部テストやり直しだからね 1つでも見つかったら全部やり直し : デフォルトの名無しさん [sage] 2020/10/11(日) 20:08:06.89:IRO7qPRX バグはコンパイラに探させたほうがいい だから関数型がいいんだ 関数型はテストもシンプルで少なくて済む : デフォルトの名無しさん [sage] 2020/10/11(日) 20:27:18.34:dpbsaRzg 関数型で状態があるテストはどうやってやるの? : デフォルトの名無しさん [sage] 2020/10/11(日) 20:28:39.68:IRO7qPRX そんなものはない : デフォルトの名無しさん [sage] 2020/10/11(日) 20:51:40.01:dpbsaRzg ? ゲームで設定から言語を 英語から日本語に変更したら 日本語で表示されるでしょ? 関数型でも同じことなんだが : デフォルトの名無しさん [sage] 2020/10/11(日) 20:54:28.98:z7d9ld+N 英語を入力して、日本語が出力されるのを確認、じゃないの : デフォルトの名無しさん [] 2020/10/11(日) 21:07:29.17:jQvs4XJ7 ナウなヤングはステートを持たないコーディングがバカウケでしょ? DBに持たせてアプリケーションサーバには持たせない : デフォルトの名無しさん [sage] 2020/10/11(日) 23:34:04.06:W4Wa1Rix 言語変更の問題なら、 すべきテストは異なる環境を網羅した横展開のテストだけど、 の指摘なら、全く同じ環境なのに手動で1000回試行しろと命じられる縦に掘っていくテスト : デフォルトの名無しさん [sage] 2020/10/13(火) 19:03:34.58:iaFJXjyC 純粋に関数型を突き詰めるなら状態が必要な部分は全部引数に追い出すのが正解じゃないかな 多言語対応必要なラベルは言語コンフィグ参照なんかせずに毎度文字列を受け取れってことだ まあ流石にそれはきついだろうから文字列そのものじゃなく文字列を吐くモナドを受け取る形でもいいと思うけど : デフォルトの名無しさん [sage] 2020/10/15(木) 12:59:52.75:topCoxzZ 自動テストは効果がありませんって言われてるぞ ttp://https://hypothesis.works/ : デフォルトの名無しさん [] 2020/10/15(木) 16:45:53.96:HNijBbKl ちゃんと読めよ 自動化してもテストケースは人間が作ってるから テストケースも自動化しようぜ!っていうのがHypothesisっていうツールの役目だろ? だから自動テスト自体を否定してるもんじゃないぞ ttp://https://github.com/HypothesisWorks/hypothesis : デフォルトの名無しさん [sage] 2020/10/15(木) 21:45:30.14:A5nmP/dE 老眼だからタイトル以外読めなかったんだよ : デフォルトの名無しさん [sage] 2020/10/16(金) 05:14:11.22:JZ/7iYjr × 自動テストは効果がありません ○ テストケースを自動化することは効果がありません ttp://https://hypothesis.works/ : デフォルトの名無しさん [sage] 2020/10/16(金) 08:32:18.61:FKXPrG5o むしろ、従来の自動化程度では甘い。もっと自動化しようぜとしか読めないのだが。 てか、あんた、中学レベルの英語を読めないの? : デフォルトの名無しさん [sage] 2020/10/16(金) 09:32:48.76:Rg7DLMwV ニンゲンに金銭を注入することで自動的に作業させてます。 : デフォルトの名無しさん [sage] 2020/10/16(金) 12:10:17.32:nTFwSCW3 自動テストを実現できていれば 中身を他の言語で書き直しても 簡単に動作確認が取れるよな : デフォルトの名無しさん [] 2020/10/16(金) 12:12:12.88:jRO02CLT 開発環境言語とテスト環境言語は一緒でも良いけど 開発環境とテスト環境は一緒にしてると移行しにくいな ソースにテスト埋め込めます(キリッ っていう言語多いけどさ : デフォルトの名無しさん [sage] 2020/10/16(金) 18:51:33.46:z+duWmz5 全自動になったとしてさ ルールは与えないといけないわけでしょ? そのルールのデバッグできないの? : デフォルトの名無しさん [sage] 2020/10/16(金) 20:57:43.76:nTFwSCW3 仕様書を数式で書けば可能だが : デフォルトの名無しさん [sage] 2020/10/16(金) 21:42:50.76:Z7geSy3Q 仕様書に書いてあることだけチェックすりゃいいわけで 仕様書の項目以上増えることはない : デフォルトの名無しさん [] 2020/10/17(土) 10:32:40.48:0qFIP5N2 仕様書からコード自動生成すればテスト不要説 : デフォルトの名無しさん [sage] 2020/10/17(土) 10:42:01.97:5q1XC6C5 発想が貧弱 : デフォルトの名無しさん [sage] 2020/10/17(土) 11:55:44.81:LinsUHOp CASEツールやらUMLコード生成やらもう何十年も前からそういったアプローチがあるけど全くスタンダードになってない。 唯一Matlab+Simulinkが自動車業界で流行ってるぐらいかな? 開発言語の進化こそあるにせよ結局仕様書の曖昧さを具体化するのはソースコードのみであるという事実は何も変わってない。 : デフォルトの名無しさん [sage] 2020/10/17(土) 12:29:10.51:Ty9bf9Kk 仕様書は結構曖昧に書かれている その曖昧な仕様書をよんで、ここが曖昧ですと指摘できるAIが 実現できないと仕様書からコードは自動生成できるようにはならない しかし曖昧な文章を理解できてかつ、曖昧な文章を曖昧だと指摘できるAIは作れるのかね? : デフォルトの名無しさん [sage] 2020/10/17(土) 12:35:18.94:qrQLeEGD 仕様書が曖昧でも別に俺らは困らないよな 割と曖昧に組むこともできるし 会社の経営者層と俺らって一線引いてあること多いし セキュリティが緩かったですなんて完全に他人事 客先常駐だったらそもそも仕様を決めたクソったれが悪いし 請負だったら出された要件を満たす項目だけ組むだけ 要件に最強のセキュリティとか書いてあったらできませんと返すことになるだろうが : デフォルトの名無しさん [] 2020/10/17(土) 12:37:17.41:/Ip3Dsod アスペ型AI最強説 : デフォルトの名無しさん [sage] 2020/10/17(土) 12:55:58.45:ef5D23Sc 仕様書から生成されたコードの動きをテストするのは 仕様の曖昧さとは関係ない 仕様に曖昧さがなくてもテストは必要 : デフォルトの名無しさん [sage] 2020/10/17(土) 13:02:44.32:Ty9bf9Kk > 仕様書が曖昧でも別に俺らは困らないよな プログラムに直すときに修正しているからね コンピュータ(AI含む)はそれができないから 仕様書からのコードの自動生成なんて不可能 : デフォルトの名無しさん [sage] 2020/10/17(土) 13:23:25.28:9U6WfMT4 無知って怖いね : デフォルトの名無しさん [sage] 2020/10/17(土) 13:31:34.30:3xHHIx95 世の中には仕様記述言語というのがあってだな : デフォルトの名無しさん [sage] 2020/10/17(土) 15:10:30.11:zcPq/h/0 ところが誰も使ったことがないのである : デフォルトの名無しさん [] 2020/10/17(土) 16:23:53.28:0qFIP5N2 >仕様記述言語 rubyのことですねわかります : デフォルトの名無しさん [sage] 2020/10/18(日) 11:43:25.20:FKsFCJUX ラヴィ : デフォルトの名無しさん [sage] 2020/10/20(火) 00:14:22.29:263iGv0V テーテテーテテッテッテッ
凡例:
レス番
100 (赤) → 2つ以上レスが付いている
100 (紫) → 1つ以上レスが付いている
名前
名無しさん (青) → sage のレス
名無しさん (緑) → age のレス
ID
ID:xxxxxxx (赤) → 発言が3つ以上のID
ID:xxxxxxx (青) → 発言が2つ以上のID
このページは2ch勢いランキング が作成したキャッシュです。元のページはこちら 。削除についてはこちら 。