概要
srcフォルダとtestsフォルダを分けると、何もしないとtestsフォルダの自動テストコードからsrcフォルダのモジュールが参照できないエラーになります。このエラー解消方法のメモです。
srcフォルダとtestsフォルダを分ける配置を「srcレイアウト」と呼びます。
[広告]関連書籍
リンク
リンク
プロジェクト構造
プロジェクトは下記のフォルダ構成とします。
[project]
│ pyproject.toml
│ uv.lock
├─src
│ └─value_object
│ │ capitalized_name.py
│
└─tests
│ test_capitalized_name.py
pyproject.tomlの設定
10行目~15行目を追加し、uv syncします。srcフォルダ内のモジュールがインストールされ、testsフォルダ内の自動テストコードから参照できるようになります。
Python のプロジェクトをパッケージングする - Python Packaging User Guide
下記10行目~12行目を追加する設定もよく紹介されますが、IDEから自動テストコードを見たときにエラーが残るため採用していません。ただ単にIDE側の設定の問題かもしれませんが。

コメント