0
を属性とアクセスに設定されていますか?私はテストクラスに属性を設定する必要があります( "トークン")、それは1つのテストを実装する必要があり、後続のテストで使用できます。Djangoのテストは、私はこのようになりますDjangoのテストを持っているさまざまな方法で
を属性とアクセスに設定されていますか?私はテストクラスに属性を設定する必要があります( "トークン")、それは1つのテストを実装する必要があり、後続のテストで使用できます。Djangoのテストは、私はこのようになりますDjangoのテストを持っているさまざまな方法で
テスト内の機能は、表示された順序で実行されません。実際にはsetUp()
が実行され、1つのテストケースが実行され、クラスが破棄されます。テストの間に状態を保存することを期待しないでください。
テストは独立した単位である必要があります。テストは、実行する前に他のテストに依存するべきではありません。私はバットから2つの理由を挙げることができます:a)テストはより多くの依存関係を維持することが難しくなります。b)テストを並行して実行することは非常に難しくなります。
各テストで発生する必要があることがある場合は、別の非テストメソッドに分割し、各テストから呼び出します。
def setUp(self):
self.token = ""
self.fixtures = ['tests/testdata.json']
def updateToken(self, response):
self.token = response.json()["token"]
def test_client_register(self):
....
updateToken(self, response)
def test_auth_token_verify(self):
updateToken(self, response)
body = {
"token": self.token # <-- At this point, self.token is "", why??
}
response = self.client.post(reverse("misuper:api_token_verify"), body, format="json")
これが表示されます。ありがとう。 – alejoss