一个简单的Django测试实例(十四)

Django的单元测试类django.test.TestCase从unittest.TestCase继承而来。
本文的例子就是用django.test.TestCase类进行Django的单元测试。

1.在创建Django应用时,默认已经生成了tests.py测试文件,打开FirstApp应用下tests.py文件,编写针对模型的测试用例。tests.py文件代码如下:

from django.test import TestCase
from FirstApp.models import Event, Guest

# Create your tests here.
class ModelTest(TestCase):

    def setUp(self):
        Event.objects.create(id=1,name='tom1',status=True,limit=2000,
            address='beijing',start_time='2017-04-19 20:00:01')
        Guest.objects.create(id=1,event_id=1,realname='tom2',
            phone='13500001111',email='[email protected]',sign=False)

    def test_event_models(self):
        result=Event.objects.get(name='tom1')
        self.assertEqual(result.address, "beijing")
        self.assertTrue(result.status)

    def test_guest_models(self):
        result=Guest.objects.get(phone='13500001111')
        self.assertEqual(result.realname,"tom2")
        self.assertFalse(result.sign)

1)首先创建ModelTest类,继承django.test.TestCase测试类。
2)在setUp初始化方法中,分别创建一条发布会(Event)和一条嘉宾(Guest)数据。
3)通过test_event_models()和test_guest_models()测试方法,分别查询创建的数据,并断言是否正确。

2.执行测试用例,Django提供了专门的“test”命令来运行测试。截图如下:截图中的错误请忽略!!!

一个简单的Django测试实例(十四)_第1张图片

3.运行测试用例的命令说明

1)运行FirstApp应用下的所有测试用例。

\FirstProject>python3 manage.py test FirstApp

2)运行FirstApp应用下的tests.py测试文件。

\FirstProject>python3 manage.py test FirstApp.tests

3)运行FirstApp应用tests.py测试文件下的ModelTest测试类。

\FirstProject>python3 manage.py test FirstApp.tests.ModelTest

4)执行ModelTest测试类下面的test_event_models测试方法(用例)。

\FirstProject>python3 manage.py test FirstApp.tests.ModelTest

5)使用-p(或–pattern)参数模糊匹配测试文件。

\FirstProject>python3 manage.py test -p test*.py

至此,Django测试实例就此完毕。下篇会写客户端的实例。

你可能感兴趣的:(一个简单的Django测试实例(十四))