Django selenium - StaticLiveServerTestCase - данные инициализированы setUpClass: данные доступны в первом вызванном методе, но не во втором вызванном методе

У меня проблема при инициализации данных в setUpClass со StaticLiveServerTestCase.

Я определил метод create_test_data() где я создаю все мои объекты (пользователь и т.д...).

Затем я определил метод класса с setUpClass (где вызывается create_test_data()) и 2 метода для 2 различных тестов.

Мой первый тест прошел, но не прошел второй. Похоже, что в то время как инициализированные данные доступны для первого метода/теста1, они больше не доступны для второго метода/теста2.

Тест пройден, если они выполняются раздельно.

Я пробовал использовать метод setUp и метод класса SetUpTestData, но ни то, ни другое не работает лучше.

test.py

def create_test_data():
   # objects created

class L_access_menu_creation_patient_TestCase(StaticLiveServerTestCase):

    @classmethod
    def setUpClass(cls):
        super().setUpClass()
        cls.selenium = WebDriver()
        cls.selenium.implicitly_wait(1)
        cls.selenium.maximize_window()
        cls.date_saisie = timezone.now()
        cls.selenium.get(cls.live_server_url)
        create_test_data()

    # test1
    def test_menu_create_available_admin(self):
        username_input = self.selenium.find_element_by_name("username")
        username_input.send_keys('admin')
        password_input = self.selenium.find_element_by_name("password")
        password_input.send_keys('admin')

        # click sur le bouton 'connexion' pour valider login/mdp
        self.selenium.find_element_by_xpath('/html/body/form/button').click()

        # vérifier que le menu est affiché
        self.assertTrue(self.selenium.find_element_by_id('createmenu').is_enabled())

        # click sur le bouton 'deconnexion'
        self.selenium.find_element_by_id('dropdownMenuButton').click()
        self.selenium.find_element_by_xpath('/html/body/nav/div/div/a[3]').click()     
   
    # test2
    def test_menu_create_available_test1(self):

        # add permission to user test1
        self.test1 = User.objects.get(username='test1')
         content_type = ContentType.objects.get_for_model(Patient)
        permission = Permission.objects.get(
            codename='add_patient',
            content_type=content_type,
        )
        self.test1.user_permissions.add(permission)
        # same test as above for admin user

возникла ошибка: django.contrib.auth.models.User.DoesNotExist: User matching query does not exist.

Вернуться на верх