2016-04-29 29 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