Я написал тесты для интерфейса администратора в проекте django, и все тесты проходят отдельно, но когда я запускаю класс с тестами, он не работает.
Класс с тестами (test_admin.py):
from django.forms.models import model_to_dict
from django.test import TestCase
from core.tests.test_data import TestDataAbs
from apps.doctor.models import Doctor, DoctorSchedule, DoctorSpecialization
import apps.doctor.admin as admin_models
OK_STATUS_CODE = 200
class TestAdmin(TestCase, TestDataAbs):
def setUp(self):
self.test_root_user = self.root_user
self.client.login(username=self.root_user_test_data['username'], password=self.root_user_test_data['password'])
def tearDown(self):
self.client.logout()
def test_add_doctor(self):
admin_tickets_pages = TestDataAbs.get_admin_urls('doctor', admin_models)
self.client.post(admin_tickets_pages['doctor_add'],
data=model_to_dict(Doctor.get_first_or_create()))
response = self.client.get(admin_tickets_pages['doctor_change'])
self.assertEqual(response.status_code, OK_STATUS_CODE)
def test_add_doctor_specialization(self):
admin_tickets_pages = TestDataAbs.get_admin_urls('doctor', admin_models)
self.client.post(admin_tickets_pages['doctorspecialization_add'],
data=model_to_dict(DoctorSpecialization.get_first_or_create()))
response = self.client.get(admin_tickets_pages['doctorspecialization_change'])
self.assertEqual(response.status_code, OK_STATUS_CODE)
def test_add_doctor_schedule(self):
admin_tickets_pages = TestDataAbs.get_admin_urls('doctor', admin_models)
self.client.post(admin_tickets_pages['doctorschedule_add'],
data=model_to_dict(DoctorSchedule.get_first_or_create()))
response = self.client.get(admin_tickets_pages['doctorschedule_change'])
self.assertEqual(response.status_code, OK_STATUS_CODE)
Выполнить один тест:
Выполнить класс с тестами: