ユニットテストとは何ですか?
ユニットテストは、認証のためのソフトウェア設計ユニット(モジュール)のために最も責任があります。
Pythonのユニットテストフレームワーク、例えばユニットテスト、pytestは多くの言語にありますが、doctestのは、Python言語である、のようなユニットテストユニットテストフレームワークをしています。
以下のプレゼント比較的単純なユニットテストスクリプトのユニットテスト
1つの インポート unittestの #は、ユニットテストモジュール導入 2 3。 4。 クラス TestCount(たunittest.TestCase):# は、すべてのメソッドたunittest.TestCase親クラス継承サブクラス試験クラスを定義する 5。 6。 DEFセットアップ(自己): #セットアップ()メソッドが使用されています初期化テストケースの実行前に 7 印刷(「テストスタート」) 8 9 DEFは(自己を)test_add: #は、あなたが複数のテストケースのメソッドを定義することができ、テストの始まりはに基づいている必要がありちなんで名付けられた、テストケースのセクションを定義する 10 (= result_1 INPUTを" Aナンバーてください!\ N- " ) 11 result_1 =INT(result_1) 12がある self.assertEqual(result_1、113、MSGは= " 何かが間違っている") #は、たunittest.TestCase結果のクラスを決定するための様々な方法を使用してアサートすることができる 13をされた 14 DEFの test_add2(セルフ): #の2つのテストケース 15 result_2 * = 18 8である。 16 self.assertEqual(result_2、144、MSGは= " 結果が間違っている" ) 17。 18である DEFティアダウン(自己): #ティアダウン()メソッドセットアップ()メソッドが対応するためにテストケースの実行の余波した後、次の例の実装のためのクリーンな環境を残して 19 印刷(「テスト終了」) 20 21は、 22である IF __name__ == 「__main__ 」: #は、部分的に使用されるmain()メソッドは、ユニットテストモジュールスクリプトがに直接実行することができるであろう ある23 )(unittest.main
公式ドキュメント上のPython標準ライブラリのユニットテストでは、開口部の章では、より重要な四つの基本的な概念を与えます:
テストケース(テストケース)
テストケースは、独立したテスト単位です。これは、応答時に入力された特定のデータをチェックします。 unittest
基底クラス: TestCase
新しいテストのために。
テストスイート(テストスイート)
テストスイートは、 テストケースやテストスイート、または両方のシリーズです。これは、テストが一緒に行っニーズをアーカイブするために使用されます。
テストランナー(テストランナー)
テストランナーは、 出力試験結果を実行するための成分です。この操作は、提供されるテストスイートまたはテストケースベースTextTestRunnerのrun()メソッドによって実行されるグラフィカル・インターフェース、テキストインターフェースを使用することができます。
足場テスト(テストフィクスチャ)
テストフィクスチャは、 1つ以上のテストの準備をするために必要であること、ならびにすべての関連クリーンアップ動作は、典型的には、セットアップ()およびtearDown()メソッドでテストケースによって行われます。たとえば、これは一時的またはプロキシデータベース、ディレクトリの作成が含まれ、その後、またはサーバー・プロセスを開始することがあります。
- ユニットテストアサーション一般的に使用される方法:
MSG:文字列が確立されていないときの判断が返される必要があります
assertEqualは(A、B、MSG = "")
第==第二の2つのパラメータに等しく決定されます
assertNotEqual(A、B、MSG = "")
の2つのパラメータを分析するには、同じではありません。最初の!=第二
assertIn(部材、容器、MSG =は 「」)
文字列が含むかどうかを決定する:容器内部材
assertNotIn(自己、部材、容器、 MSG =「」)
の文字列であったか否かを判断する。メンバでない容器内
いるassertTrue(X、MSG = "" )
決定されるが真である:BOOL(x)が真であります
assertFalseは(X、MSG = "" )
偽かどうかを決定します。BOOL(x)はFalseです
assertIsNone(OBJ、MSG = "" )
なしかどうかを決定する:objがNoneです
assertIsNotNone(OBJ、MSG = "" )
なしか否かを判断する。objがNoneでありません
- 継続するには