ユニットテストする#

poetry run pytest
  • プロジェクトルートで poetry run pytest を実行してユニットテストできます

  • デフォルトでは/tests/ にある test_*.py を対象にユニットテストを実行します

  • pytest の設定は /pyproject.toml[tool.pytest.*][tool.coverage.*] で設定しています

よく使うオプション#

poetry run pytest -sv --maxfail=1
  • -s: print()の出力をそのまま表示するのでデバッグに便利

  • -v: それぞれのテストの関数名を詳細に表示

  • --maxfail=1: 最初の1件で停止するのでデバッグに便利

テストカバレッジを確認する#

poetry run pytest --cov=haniwers --cov-report=term --html=report.html
  • --cov=haniwersオプションでテストカバレッジを確認できます

  • カバレッジレポートの出力にはpytest-covが必要です(このプロジェクトでは、自動でインストールされるはずです)

  • --cov-report=termで生成されるレポートをターミナルで確認できます

  • --html=report.htmlで生成されるレポートは、ブラウザで開くことで視覚的にカバレッジを確認できます

開発時の注意#

  • 機能を追加した場合は、対応するユニットテストを追加してください

  • バグを修正した場合も、再発を防ぐために再現テストを追加してください