そもそも、TDDを何でやろうかな?と思ってるかというと。
- 設計としてテスト駆動開発を利用したい(いわゆるks設計はしたくない)
- ウォーターフォールに居る中での手法検討(どこが大変で導入コストとしてどこが受け入れられにくいのか)
- 暇つぶし
ただ、Java全然使ってない(業務ではC++、趣味とかでもPython)なのでどっちかで書こうかなと。とりあえずお手軽なPythonを選択。で、詰まった。「パッケージ構成どうしよう……?」
- いつもはワンライナー的な使い方やちょっとしたスクリプトとして運用している。
- パッケージ考えたことない……
- そもそもPythonのUnitTestプラットフォーム使ってない……
略/ProjectRoot---src---doller.py
test--test_doller.py
としてtest_doller.pyからfrom src.doller import Dollerとしてみたら、まあ動かない(そんなもんはない!って怒られる奴)。なんてことはなく、__init__.pyを置いてなかったせいなんですが。両方のディレクトリにとりあえず、__init__.pyを置いたら解決しました。
途中で.pth形式のファイルを置いてみたりしたんですけど、あんまり効果なかったですね。(実行はWindows10、Visual Studio Code、VSCode上のPowerShell)
あと本の途中で、型キャストをしているところがあったんですが、そこはtype()のチェック後、raise Exception("")無理やりやることにして試験したことにしました。
とりあえず1章抜ければ次はPythonコードで書いてあるのでそこを目指してやっていきます。では
メモ:
通常のアサート:
assert [Trueを期待する文]
例外発生確認:
with pytest.raises(Exception):
[例外を期待する文]