2011-06-22 9 views
3

単体でコードを書くときに、単体テスト、機能テスト、またはテスト駆動開発(TDD)メソッドを実行するのに時間を費やすかどうかは疑問です。または、彼はそれを働かせることについてただ気にします。プロジェクトを単独でコーディングするときにテストを実行しますか?

理由これらのテストを行うとプロジェクト全体が長くなるため、質問します。

ありがとうございました。

+0

私は3層の圧縮アルゴリズムをコーディングしましたが、私は単一のテストを使用していません。ダメージ。それが私がそのことについて言うつもりなのです。 – Erandros

答えて

2

チームの唯一の開発者であろうと、テストの利点は同じです。

したがって、魔法の答えはです。それは完全にまでです。

2つのシナリオの間の唯一の本当の違いは、あなたが自分で開発しているときに、テストを書く書いたりしないように他の誰かを説得する必要はありませんで、あなたは、単に自分自身でその引数を持つことができます。

+0

私はここでの問題は費用対時間だと思う。チームがあれば、テストエンジニアを捧げることができます。 – Victor

+1

TDDを使用している場合、開発者は通常、テストエンジニアではなくテストを記述します。そして、私は "費用対時間"の発言を書き直すだろう。あなたがやりたいテストがどれほど遅いか早い時期にバグを見つけ出す方がコストがかかるかどうかということだ。 – Mathias

3

私はユニットテストを実行しない場合、それは、プロジェクト千倍以上に延長することを発見しました。私はいつも機能を動作させ、次に次の機能、次に機能を得たいと思っています。たとえ私が自分たちで何度もテストを実行してタイムリーな完成を目指すことができたとしても、単体テストの練習が必要です。

2

私はいくつかのモジュールのAPI年代の初めに定義されていないだってTDDを行うと、データモジュールのためのAPIを書くことが時には少し混乱しながら、UIを書い好みます。

ので、私はそれのためのテストケースを書くことによってデータモジュールAPIを作成する傾向があります。私はまたそれを使って進歩を測定します。一度それが行われます。 UIはかなり速く完了し、データ部分が既にテストされているので、UIのデバッグがずっと速くなります。

テストケースの開発にオフセットが多い一方で、それは保存し、デバッグ時間は良い量で、快適な開発フローを提供します。

1

それは依存:)

  • それは私が学ぶことを試みている概念 /ハイテクのプロトタイプ/証拠である場合。私は通常を選択しないでください。TDDを選択しないでください。 (私は私のアプリに統合しようとしているサードパーティのLIBSのための学習のテストは例外です。)
  • それは私が時間(ヶ月以上)の長い期間のために維持する必要があるものであれば、私は選ぶだろうTDD。将来的に複数の人がそれに取り組むつもりなら、私は間違いなくTDDを選ぶだろう。

つまり、TDDは自動的に良いapps/design/insert-good-metricを意味しないと言った。良い/経験豊富なプログラマーは良いソフトウェアを書く。 TDDの方が、より良い/より速くなる傾向があります。

関連する問題