Open3
Djangoのテストについて得た知見
バージョンについて
- Django 4.0(4.0の新機能は明記する)
- Python 3.10(3.10の新しい記法については明記する)
- pytest 7.1.2
- pytest-django 4.5
- pytest-mock 3.7
関連性は低いが使用しているライブラリー
- django-stubs 1.10
- djangorestframework-stubs 1.5
- django-rest-framework 3.12
django-testについて (調べ中)
unittestを継承したdjangoのテストライブラリーである。以下、特に明記がない限りdjango.test以下のクラスである。
TODO: urlをコミットのリビジョン番号が含まれてるものにする。
TestCaseについて
ソースコード(django/test/testcaces.py 1392行目付近) より考えられること。
- テストの分離を実現している
- TransactionTestCaseを継承している。
TransactionTestCase(同1147行目付近) とは
- SimpleTestCaceを継承している
SimpleTestCase(同300行目付近) とは
- unittset.TestCaseを継承してる
- djangoのTestCaseのほとんどがSimpleTestCaseを継承している
多分ここにDB関係の設定とかが入っている。
考察メモ:
SimpleTsetCaseの特性を使いたくない(DBを動かしたくない時)はunittset.TestCaseを継承して使った方が良い