Django测试用例 Django默认Python的标准库unittest编写测试用例。Django的单元测试类django.test.TestCase 从unittest.TestCase继承而来。在创建Django应用时,默认已经生成了tests.py测试文件。 setUp()初始
Django测试用例
Django默认Python的标准库unittest编写测试用例。Django的单元测试类django.test.TestCase 从unittest.TestCase继承而来。在创建Django应用时,默认已经生成了tests.py测试文件。
setUp()初始化方法创建了2条数据,通过下面的测试方法,查询插入的数据,断言数据是否正确。注意:setUp()初始化方法并不会真正向数据库插入数据,所以不用清理测试数据。
千万不能单独运行tests.py文件。Django执行测试文件的命令为:python manage.py test
from django.test import TestCase # Create your tests here.
from .models import Event,Guest class ModelsTest(TestCase): def setUp(self): Event.objects.create(id = 1,name = ‘oneplus 3 event‘,status = True,limit = 2000, address = ‘shenzhen‘,start_time = ‘2016-08-31 02:18:22‘) Guest.objects.create(id = 1,event_id = 1,realname = ‘alen‘,phone = ‘13723456780‘, email = ‘[email protected]‘,sign=False) def test_event_models(self): result = Event.objects.get(id=1) self.assertEqual(result.address,‘shenzhen‘) self.assertTrue(result.status,True) def test_guest_models(self): result = Guest.objects.get(realname = ‘alen‘) self.assertEqual(result.phone, ‘13723456780‘) self.assertFalse(result.sign, False)
运行测试用例:
运行sign应用下的所有用例:python manage.py test sign
运行sign应用下的tests.py测试文件:python manage.py test sign.tests
运行sign应用下的tests.py测试文件下的ModelTest测试类:python manage.py test sign.tests.ModelTest
使用-p参数模糊匹配测试文件:python manage.py test -p test*.py