2016-04-29 62 views
0

龍捲風測試主題文檔非常簡單,我不太確定如何對龍捲風進行單元測試。這樣的:如何在龍捲風上進行單元測試

這裏是一個api.py:

import tornado 
import logging 
from tornado.web import RequestHandler 
import time 


class AnalyticsBWSpecificHour(RequestHandler): 
    def get(self): 
     return self.write({'message':'no get method'}) 


class Application(tornado.web.Application): 
    def __init__(self,**kwargs): 
     api_handlers = [ 
      (r"/", AnalyticsBWSpecificHour), 
     ] 

     logging.debug(api_handlers) 

     super(Application, self).__init__(api_handlers, **kwargs) 

和test_tornado.py:

from api import Application 

from tornado.testing import AsyncHTTPTestCase 
import tornado 
import logging 
logging.basicConfig(level=logging.DEBUG) 
import unittest 

class ApiTestCase(AsyncHTTPTestCase): 
    def get_app(self): 
     self.app = Application(debug=True) 
     return self.app 

    def test_status(self): 
     print(self.get_url('/')) 
     response = self.fetch(self.get_url('/'),method='GET') 
     self.assertEqual(response.code,200) 

if __name__ == '__main__': 
    unittest.main() 

即使這是很簡單的例子,我還獲得了599錯誤。請幫幫我。

回答

3

響應= self.fetch(self.get_url( '/'),方法= 'GET')

self.fetch()呼叫self.get_url爲您服務。要麼self.fetch('/')self.http_client.fetch(self.get_url('/')),但不要混合兩者。

也在測試中不通過debug=True; autoreload會在單元測試環境中做錯誤的事情。

+0

謝謝,現在是作品。 – wanze