pythonでテストコード実装のためにpytestを使用したので、その導入方法と最低限の使い方についてまとめます。
環境
Mac OSX
Python 3.7.7,
pytest-6.1.2,
py-1.9.0,
pluggy-0.13.1
pytestの導入方法(インストール)
ターミナル
$ pip install pytest
これでインストール完了です。
ファイル構成
.test/
├── A
│ └── test_a.py
└── B
└── test_b.py(後でまとめて実行する場合には、ファイル名を一意に定まるようにする。()
<注意点>
- テストファイル名は
test
で始まるようにする(例:test_integration.py, test_unit.py) - テストファイル(.py)のファイル名は一意に定まるようにする(他のテストファイルと名前が被らないようにする)
- テスト対象の関数名は
test
で始まるようにする
<関数の記述方法>
import os
import sys
sys.path.append(os.getcwd()) # pytestはカレントディレクトリをsys.pathに追加しないためカレントディレクトリ上にあるファイルを読み込みたい場合はimport os, import sysと一緒に明記
def test_a():
assert 6 == multiplication(2, 3)
def multiplication(x, y):
return x * y
テストコード実行方法
フォルダ別で実行する場合
ターミナル
$ pytest test/A
上階層から複数のフォルダに対してまとめて実行することもできます。
ターミナル
$ pytest test
ファイル別で実行する場合
ターミナル
$ pytest test/A/test_a.py
もしくは、ディレクトリを移動して
ターミナル
$ pytest test_a.py
でも大丈夫です。