Middle+
pytest'da markalar (marks) nima?
sobes.tech AI
AIdan javob
pytest'da markalar (marks) testlarni guruhlash, filtrlash yoki ishga tushirish vaqtida ularning xulq-atvorini o'zgartirish uchun usuldir.
Asosiy qo'llanilishi:
- Testlarni guruhlash: masalan, testlarni "sekin", "ma'lumotlar bazasi", "api" sifatida belgilash va faqat ma'lum guruhlarni ishga tushirish.
- Testlarni o'tkazib yuborish:
@pytest.mark.skipyoki@pytest.mark.skipifmarkeri yordamida ma'lum shartlar ostida testlarni o'tkazib yuborish mumkin. - Parametrizatsiya: parametrizatsiya uchun alohida mexanizm bo'lsa-da, markerlar qo'shimcha mantiq uchun ishlatilishi mumkin.
Markerdan foydalanish misoli:
import pytest
@pytest.mark.slow
def test_heavy_computation():
# juda ko'p vaqt oladigan test
assert True
@pytest.mark.skipif(condition, reason="Sabab")
def test_skip_example():
assert False
Ma'lum bir marker bilan testlarni ishga tushirish uchun buyruq satri opsiyasidan foydalaniladi:
pytest -m slow
Markerlar testlarni tashkil qilish va ularning ishga tushirilishini boshqarishda yordam beradi.