2017-03-29 2 views
1

私はこれを下記のコードで試しましたが、うまくいきませんでした。セレンテスト中に実行されたクエリをカウントするには?

class SeleniumTest(LiveServerTestCase): 
    @classmethod 
    def setUpClass(cls): 
     super().setUpClass() 
     cls.driver = PhantomJS() 

    @override_settings(DEBUG=True) 
    def test_queries(self) 
     with self.assertNumQueries(10): 
      self.driver.get(self.live_server_url + "/page-with-10-queries") 

出力:

query['sql'] for query in self.captured_queries 

AssertionError: 0 != 10 : 0 queries executed, 10 expected 

Captured queries were: 

答えて

0

ビューによって生成されたクエリをテストするには、私は次のコードを使用:あなたが主張する場合

def test_queries(self): 
    with self.assertNumQueries(3): 
     found = self.client.get(reverse('<url name>')) 
     print(found) # This is the line that initiates the Lazy query 

を次のようにテストされていない提案ですが、セレンを使用して試してみてください:

@override_settings(DEBUG=True) 
def test_queries(self) 
    with self.assertNumQueries(10): 
     found = self.driver.get(self.live_server_url + "/page-with-10-queries") 
     print(found) # Just an idea 
関連する問題