如何在django中测试"渲染到模板"功能?(TDD)

iCo*_*unk 12 testing django tdd django-views

我该如何测试这些功能?他们所做的就是渲染html页面并将一些对象传递给html页面.

def index(request):
    companies = Company.objects.filter(approved = True);
    return direct_to_template(request, 'home.html', {'companies': companies} );
Run Code Online (Sandbox Code Playgroud)

sup*_*er9 34

可以测试以下内容:

  1. 响应代码
  2. 使用的模板
  3. 模板包含一些特定文本

代码看起来像这样:

class TestPage(TestCase):

   def setUp(self):
       self.client = Client()

   def test_index_page(self):
       url = reverse('index')
       response = self.client.get(url)
       self.assertEqual(response.status_code, 200)
       self.assertTemplateUsed(response, 'index.html')
       self.assertContains(response, 'Company Name XYZ')
Run Code Online (Sandbox Code Playgroud)

  • 这将是一个系统测试.试试这个视频http://www.youtube.com/watch?feature=player_embedded&v=ickNQcNXiS4 (2认同)