今日の内容は、Pythonでテストしたいにまとめている内容の詳細部分です。

unittestより高度な機能を提供するpytestを使ってみます。

公式ドキュメント は、これかな?

本もありますね。これ、日本語訳本でるのかなぁ?出そうだなぁ。と思っているので、英語版を買おうかどうか迷っています。誰か教えて。結構いいお値段なんですよね。

インストール

サードパーティー製なのでインストールが必要です。

$ pip install pytest

テストしてみよう

まずはunittestと同じテストをしてみます。

なにも継承しないで、 test_ とついているメソッドを実行してくれるようです。

実行

py.test の後ろにディレクトリ名を指定すると、ファイル名に test_ とか、 _test とかついているファイルを自動で探して実行してくれるそうです。中身がunittestで書かれていても実行してくれるそうです。色々書かなくて良くて楽ですね。

$ python -m pytest tests/
========================= test session starts =========================
platform darwin -- Python 3.5.0, pytest-3.3.1, py-1.5.2, pluggy-0.6.0
rootdir: /Users/user/tmp/python_sample, inifile:
collected 1 item                                                                                                                                       

tests/test_pytest_sample_1.py .                                                                                                                  [100%]

========================= 1 passed in 0.03 seconds =========================

なんだか便利そうなので、もう少し勉強します。