article)テストは、固体ソフトウェア開発の基盤です。テストの多くの種類がありますが、最も重要なタイプは単体テストします。単体テストでは、プリミティブとして十分にテストされた作品を使用でき、プログラムを作成することを作成するとき、それらに頼ることの自信を与えます。彼らは言語の組み込みコマンドと標準ライブラリ以外に信頼できるコードの在庫を増加させます。テストを書くの素晴らしいサポートを提供します。原則、ヒューリスティックとガイドラインにする前に、代表的な単体アクションのテストを見てみましょう。クラスは、自動運転車の運転のロジックの実装の一部です。車の速度を制御する主を取り扱っています。それはそれ、制限速度の前にオブジェクトを認識し、目的地に到着するかどうか。メソッド用の単体テストです。私は後で詳細に取得します。ガイドラインコミット適切な単体テストを作成するは難しい作業です。単体テストを作成すると、時間がかかります。ときに、コードに変更を加えると、通常と同様、テストを変更する必要があります。コードにバグがあります。あなたは本当にコミットする必要があります。メリットは非常に大きい、小さなプロジェクトの場合も、彼らは無料ではありません。懲戒処分を受けるあなたが規律する必要があります。テストは常に成功していることを確認します。するために、単体テストを自動化する必要があります。テストは事前にコミットまたは配置前のような重要なポイントで自動的に実行する必要があります。コントロール管理システムは、そのすべてのテストに合格しなかったコードを拒否します。テストされていないコードが定義によって壊れています。あなたはそれをテストしていない場合、それが動作を言うことはできません。これは、それが壊れているを検討する必要がありますを意味します。場合クリティカルなコードは、生産に展開しないでください。グラウンド単位とは何ですか。関連する関数またはクラスのセットを含むファイル/モジュール、ユニット単体テストの目的です。複数のクラスを持つファイルがある場合は、各クラスの単体テストを書く必要があります。TDDテスト駆動開発は、コードを記述する前にテストを記述する方法です。このアプローチにいくつかの利点がありますが、私は後で適切なテストを書くための規律があれば、それを避けることをお勧めします。理由は、私はコードとデザインです。私はコードを書く見て、それを書き換え、再びそれを見て、それを非常にすぐに再度書き換え。テストを書く最初私を制限し、私を低下します。初期の設計が終わったら、一度、システムの残りの部分と統合する前に、すぐにテストを書いていきます。単体テストに自分自身を紹介する素晴らしい方法だ、それはすべてのコードがテスト保証されます。標準ライブラリが付属しています。それはあなたがあなたのクラスを派生させることができるTestCaseと呼ばれるクラスを提供します。クラスのメソッドをオーバーライドできます。メソッドもオーバーライドできますが対応します。クラスから関連する部分です。メソッドのみを使用してください。クラスこの場合-それが行うことになっていることです。メソッドの構造はかなり標準的です。期待される結果を準備します。テスト対象コードを呼び出します。実際の結果が期待どおりの結果と一致することを主張します。メソッドの出力する結果を持っていないことに注意してください。それはクラス、データベースに新しい行を追加する、ファイルの書き込みやメールのような副作用の状態の変更をすることができます。メソッドは何も返しませんが、速度を0に設定することで内部状態を変更します。呼び出しを確認します。期待通りに動作しました。つのテストここであります。呼び出されたことを確認することです。その後、追加機能のためのいくつかのより多くのテストを紹介します。モジュールは非常に興味深いです。サンプルを使用して、発生した例外も含めて、結果を確認することができます。適切な単体テストは、作業の多くをかかります。コードは、通常、テスト対象コードよりもはるかに大きいです。ドキュメンテーションは、右側の中の包括的なテストを書くためだけではないです。彼らはしかし、クールされます。factorial関数は次のようになります。doctest.testmod()あなたが見ることができる、ドキュメンテーション文字列は関数コードよりもはるかに大きいです。それは、読みやすさを促進しません。