Saya mencoba mempertahankan kumpulan Pengguna dengan parameter ketersediaan sehingga PyTest dapat memilih pengguna yang tersedia dari daftar. Tetapi saya tidak tahu di mana harus meletakkannya sedemikian rupa sehingga bahkan saat berlari ...

1
Vivank 5 April 2021, 22:02

1 menjawab

Jawaban Terbaik

Mungkin saya tidak mendapatkan pertanyaan Anda dengan benar, tetapi ide pertama adalah seperti itu:

import pytest


class UsersFactory:
    _pool = [{"user": "user1", "status": True}, {"user": "user2", "status": True}, {"user": "user3", "status": True},
             {"user": "user4", "status": True}]
    _user = None

    @classmethod
    def get_user(cls):
        cls._user = cls._pool.pop(0)
        return cls._user

    @classmethod
    def back_user(cls):
        cls._user['status'] = False
        cls._pool.append(cls._user)
        cls._user = None


@pytest.fixture
def user():
    yield UsersFactory.get_user()
    UsersFactory.back_user()


def test_smth(user):
    print(user)
    assert user['status']


def test_smth2(user):
    print(user)
    assert user['status']

Anda dapat mengatur ruang lingkup ke perlengkapan, bahwa pengguna Anda akan mengatur setiap tes, fungsi, kelas, paket

1
Vova 5 April 2021, 20:17