टेस्ट मार्कर लागू करना

Python में Testing का परिचय

Alexander Levin

Data Scientist

टेस्ट मार्कर का ओवरव्यू

  • यूस केस 1: शर्त पूरी हो तो टेस्ट स्किप करें
  • यूस केस 2: यह टेस्ट फेल होने की उम्मीद है

  • टेस्ट मार्कर - pytest लाइब्रेरी में टेस्ट का एक टैग (मार्कर)

  • टैग करके खास टेस्ट का व्यवहार निर्धारित करने देता है
Python में Testing का परिचय

मार्कर सिंटैक्स

  • डेकोरेटर - Python में एक डिज़ाइन पैटर्न, जो बिना संरचना बदले मौजूदा ऑब्जेक्ट में नई फंक्शनैलिटी जोड़ने देता है
  • टेस्ट मार्कर का सिंटैक्स @pytest.mark डेकोरेटर से शुरू होता है:
import pytest

def get_length(string):
    return len(string)

# The test marker syntax
@pytest.mark.skip
def test_get_len():
    assert get_length('123') == 3
Python में Testing का परिचय

skip और skipif मार्कर

  • @pytest.mark.skip का उपयोग करें - जब आप किसी भी स्थिति में टेस्ट स्किप करना चाहें
  • @pytest.mark.skipif का उपयोग करें - जब दी गई शर्त True हो तो टेस्ट स्किप करना चाहें
Python में Testing का परिचय

skip मार्कर उदाहरण

  • @pytest.mark.skip का उपयोग करें - जब आप टेस्ट को अनिश्चितकाल तक स्किप रखना चाहें।
import pytest
def get_length(string):
    return len(string)

# The skip marker example
@pytest.mark.skip
def test_get_len():
    assert get_length('123') == 3
Python में Testing का परिचय

skip मार्कर उदाहरण: आउटपुट

  • स्किप किए गए टेस्ट का आउटपुट:

pytest.mark.skip उदाहरण

Python में Testing का परिचय

skipif मार्कर उदाहरण

  • @pytest.mark.skipif का उपयोग करें - जब दी गई शर्त True हो तो टेस्ट स्किप करना चाहें।
import pytest
def get_length(string):
    return len(string)

# The skipif marker example
@pytest.mark.skipif('2 * 2 == 5')
def test_get_len():
    assert get_length('abc') == 3
Python में Testing का परिचय

skipif मार्कर उदाहरण: आउटपुट

  • शर्तानुसार स्किप हुए टेस्ट का आउटपुट:

pytest.mark.skipif उदाहरण

Python में Testing का परिचय

xfail मार्कर

  • @pytest.mark.xfail का उपयोग करें - जब आप अपेक्षा करें कि टेस्ट फेल होगा
import pytest

def gen_sequence(n):
    return list(range(1, n+1))

# The xfail marker example
@pytest.mark.xfail
def test_gen_seq():
    assert gen_sequence(-1)
Python में Testing का परिचय

xfail मार्कर: आउटपुट

  • ऐसे टेस्ट का आउटपुट, जिसके फेल होने की उम्मीद है:

pytest.mark.xfail उदाहरण

Python में Testing का परिचय

सारांश

टेस्ट मार्कर:

  • pytest लाइब्रेरी में टेस्ट का एक एट्रिब्यूट है
  • खास टेस्ट के व्यवहार को निर्दिष्ट करने के लिए उपयोग होता है
  • इसका सिंटैक्स @pytest.mark.name_of_the_marker से शुरू होता है
  • pytest में तैयार मार्कर:
    • @pytest.mark.xfail
    • @pytest.mark.skip
    • @pytest.mark.skipif
Python में Testing का परिचय

अभ्यास करते हैं!

Python में Testing का परिचय

Preparing Video For Download...