こんにちは、Habrahabr! ユニットテストのための私のプロジェクトに注目したいと思います。 より正確に-ファイルの作成、インポート、クラス、およびテストケースの宣言に特別な注意を払う代わりに、テストについてよく考えるツール。
この記事では、プロジェクトの説明、インストール方法と使用方法、およびサンプルを見つけることができます。
はじめに
utboneは、Pythonで記述されたコマンドラインライブラリ(
Githubリポジトリへのリンク )です。 これは「ユニットテストボーン」の略で、「ユニットテストバックボーン」を意味します。 コンソールの1つのコマンドで、テスト用のテンプレートを作成できます。 これにより、「セットアップ」関数の宣言、たとえば
djangoでのテストなどの日常的な作業の時間を節約できます。 もう1つのミニ機能は、テストの1つにある「assershin」です。テストをすぐに実行し、このディレクトリでテストが実行されたかどうかを確認できます。
utbone mysite/polls/tests test_views django --topping
コンソールで上記のコマンドを使用すると、テストフォルダーに
test_viewsというテスト用の次のpythonファイルを作成できます。これは、外部
モックおよび
ddtライブラリを使用して
djangoをテストすることを目的としています。
""" Tests for """ from ddt import ddt, data, unpack from mock import patch from django.test import TestCase class Test(TestCase): """ Tests for """ def setUp(self): """ Initialize """ pass def test_first(self): """ Verify that """ self.assertEqual(1, '1') @patch('') def test_second(self, mock_): """ Assert that """ pass @data( ('first', 'second', 'expected'), ('first', 'second', 'expected'), ) @unpack def test_third(self, first, second, expected): """ Make sure when """ pass
基本パターン
テストのバックボーンは、テストのタイプとトッピングの存在が異なります(すべてのテンプレートは、
参照によりGithubで利用可能です)。
プロジェクト開発のこの段階でのタイプは次のとおりです。
- unittest-Pythonに組み込まれたunittestモジュールによるテスト。
- djangoはdjangoでのテストに焦点を合わせたバックボーンです。
トッピングの存在は、コンソールでテンプレートを作成するコマンドの最後にある
--toppingフラグで表されます。 これにより、プログラマーが頻繁に使用する
モックと
ddtを追加し、コード内のメインツールをインポートして宣言できます。たとえば、テストメソッドの上に
パッチと
データデコレーターを追加できます。
... @patch('') def test_second(self, mock_): """ Assert that """ pass @data( ('first', 'second', 'expected'), ('first', 'second', 'expected'), ) @unpack def test_third(self, first, second, expected): """ Make sure when """ pass ...
使い方
この段階で、ライブラリの使用を開始できます。 最も確実な方法は、
pipを使用してインストールすることです。
pip install utbone
utboneは3つの引数を取ります。ファイルを作成する場所、名前、種類を指定します。
4つ目-トッピングの存在を追加できます(-tまたは--toppingsを使用)。
utbone mysite/polls/tests test_views django --topping
--helpフラグを使用して、ツールをローカルで使用する方法に関する指示を取得します。
utbone --help
ご清聴ありがとうございました。