[解決済み] ユニットテストはどれだけ深いか?
2023-05-02 08:06:20
質問
TDDについてわかったことは、テストをセットアップするのに時間がかかるということと、生まれつきの怠け者なので、できるだけ少ないコードを書きたいということです。私が最初にすることは、コンストラクタがすべてのプロパティを設定したことをテストすることですが、これはやりすぎでしょうか?
私の質問は、どの程度の粒度でユニットテストを書いているかということです。
...そして、テストが多すぎるということはないのでしょうか?
どのように解決するのですか?
私はテストではなく、動作するコードに対して報酬を得ているので、私の哲学は、与えられた信頼性のレベル (この信頼性のレベルは業界の標準と比較して高いと思われますが、それは単なる思い上がりかもしれません) に達するために、できる限り少ないテストをすることです。もし私が一般的にある種のミス(コンストラクタに間違った変数を設定するような)をしないのであれば、私はそのためのテストを行いません。テストエラーに意味を見出す傾向があるので、複雑な条件分岐を含むロジックの場合は特に注意しています。チームでコーディングするときは、私たち全員が間違えやすいコードを注意深くテストするように戦略を変更します。
人によって、この哲学に基づいたテスト戦略は異なるでしょうが、テストがコーディングのインナーループにどのように最適にフィットするかについての理解が未熟であることを考えると、私にはそれが合理的であるように思われます。10 年後、20 年後には、どのテストを書くべきか、どのテストを書かないべきか、そしてどのようにその違いを見分けるかについて、より普遍的な理論が確立されていることでしょう。それまでは、実験が必要なようです。
関連
-
[解決済み] Moqでクラスをモックするとき、特定のメソッドだけをCallBaseする方法は?
-
[解決済み] プライベートメソッド、フィールド、インナークラスを持つクラスをテストするにはどうすればよいですか?
-
[解決済み] TDDのためのJavaScriptユニットテストツール
-
[解決済み] ディレクトリ内のすべてのPythonユニットテストを実行するにはどうすればよいですか?
-
[解決済み】mochaのテスト用ディレクトリを指定するには?
-
[解決済み] いつモックすればいい?
-
[解決済み] 既存のプロダクションプロジェクトにユニットテストをうまく追加することができますか?もしそうなら、どのように、そして、それは価値があるのでしょうか?
-
[解決済み] Go言語でのテストに適したパッケージの命名法
-
[解決済み] ユニットテストのROIを証明する確かな証拠はあるのか?
-
[解決済み] アレンジ-アサート-アクト-アサート "でよいのでしょうか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] フェイク、モッキング、スタビングの違いとは?
-
[解決済み] ユニットテストの妥当なコードカバレッジは何%ですか(とその理由)?[クローズド]です。
-
[解決済み] モッキングとは?
-
[解決済み】ユニットテスト初心者、優れたテストを書くには?[クローズド]
-
[解決済み] Goのモック関数
-
[解決済み] GUIをユニットテストするにはどうしたらいいですか?
-
[解決済み] スタブとは?
-
[解決済み] QUnitとJasmineの比較?[クローズド]
-
[解決済み] Kotlinでユニットテストのリソースを管理する方法、例えばデータベース接続や埋め込みelasticsearchサーバーを開始/停止する方法とは?
-
[解決済み] Githubでテストの成功/失敗を表示するには?