2016-12-29 6 views

答えて

1

テスト内の機能は、表示された順序で実行されません。実際には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") 
+0

これが表示されます。ありがとう。 – alejoss

関連する問題