Python で単体テストを実行する
単体テストと呼ばれるソフトウェア開発プロセスでは、ユニットと呼ばれる、アプリケーションの独立してテスト可能な小さいコンポーネントの機能が検査されます。 Python unittest
モジュールを使用すると、単体テストを実行できます。
この記事では、単体テストと Python での実行方法について説明します。
単体テストとは
計画、ケースとスクリプト作成、および実際の単体テストは、単体テストの 3つの段階です。
最初の段階では、単体テストの作成とレビューが行われます。 次の段階は、テスト ケースとスクリプトの作成です。
Python でテスト ケースを作成および定義する
始める前に、この記事では Python バージョン 2.7 以降を使用していることに注意してください。 ただし、最新の Python 3.x バージョンを使用することをお勧めします。
テスト ケースは、システムがソフトウェア要件に準拠しており、適切に動作するかどうかを確認するための、システムに対する一連の操作です。 テスト ケースの目的は、さまざまな設計機能が期待どおりに機能するかどうかを確認し、システムが適用されるすべての標準、推奨事項、およびクライアントのニーズに準拠していることを確認することです。
テスト ケースを作成する行為は、システムの欠陥や間違いを特定するのにも役立ちます。 Python では、サブ関数 TestCase
を使用して、後でテストするテスト ケースを作成できます。
しかし、最初に unittest
モジュールをインポートして、モジュールをコードで使用できるようにします。
コード例:
import unittest
def sample_test(sample_list):
if len(sample_list) > 10:
raise ValueError("A maximum of 10 objects can be added to the container")
return {"container_a": sample_list}
class TestAddObjectToContainer(unittest.TestCase):
def test_add_object_to_container_success(self):
actual = add_object_to_container(sample_list=["A", "B"])
expected = {"container_a": ["A", "B"]}
self.assertEqual(actual, expected)
Python を使用して単一のテストを実行する
たとえば、開発したテスト ケースをテストするには、必要なセットアップが完了したら、次のコマンドを実行します。
コード例:
python -m unittest main.py
このコマンドを実行すると、次の出力が得られます。
または、テストにエラーがある場合は、このようなものです。
Python で複数のテストを実行する
たとえば、テストごとに複数の Python ファイルを作成し、それらを 1つのディレクトリに配置した場合、discover
メソッドを使用してそれらを一緒に実行できます。 テスト ファイルを自動検出するには、以前に作成した Python ファイル main.py
のようにキーワード test
で始まる名前を付ける必要があります。
python -m unittest discover
上記のコマンドは、名前が test
で始まるすべてのファイルを検出して実行します。
Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.
LinkedIn