Visual Basic ट्रैक पर टेस्टिंग

Exercism पर अपने Visual Basic अभ्यासों को टेस्ट करना सीखिए।


डाउनलोड किए गए अभ्यास के साथ आपका हल बनाने और टेस्ट करने के लिए ये फाइलें मिलती हैं:

hello-world/
├── HelloWorld.vb          # Your solution
├── HelloWorldTests.vb     # The test suite
├── HelloWorld.vbproj      # Project and build configuration
└── packages.lock.json     # Resolved project dependencies

फाइलों के नाम हर अभ्यास में अलग-अलग होते हैं। आप अपना हल पहली .vb फाइल में लिखिए। Tests.vb पर खत्म होने वाली दूसरी फाइल [xUnit टेस्ट सूट][xunit] है। आम तौर पर आप इसमें सिर्फ आगे के टेस्ट चालू करने के लिए बदलाव करेंगे। आपको अंतिम दो फाइलों में से किसी को भी बदलने की ज़रूरत नहीं पड़ेगी। .vbproj फाइल में प्रोजेक्ट की बिल्ड सेटिंग्स और सीधे पैकेज रेफरेंस होते हैं। बनने वाली packages.lock.json फाइल में तय किए गए सीधे और ट्रांजिटिव पैकेज वर्ज़न दर्ज होते हैं।

Note

टेस्ट बताते हैं कि पास होने वाले हल में कैसा व्यवहार होना चाहिए। ये उन बातों को साफ करने में मदद कर सकते हैं जो निर्देशों में नहीं बताई गई हैं।

टेस्ट चलाइए

अभ्यास की डायरेक्टरी में टर्मिनल खोलिए और यह चलाइए:

dotnet test

यह कमांड प्रोजेक्ट की डिपेंडेंसी बहाल करती है, प्रोजेक्ट बिल्ड करती है और उसके टेस्ट चलाती है। आप dotnet watch test का इस्तेमाल इसलिए भी कर सकते हैं कि जब भी कोई सोर्स फाइल बदले, टेस्ट फिर से चल जाएँ।

छोड़े गए टेस्ट

शुरू में अभ्यासों में सिर्फ पहला टेस्ट चालू रहता है, जिससे आप बाकी टेस्ट एक-एक कदम करके हल कर सकते हैं। टेस्ट ढूँढने के लिए Tests.vb पर खत्म होने वाली फाइल खोलिए। हर टेस्ट एक Sub सबरूटीन होता है, जिस पर xUnit का <Fact> एट्रिब्यूट लगा होता है। जब तक टेस्ट के <Fact> एट्रिब्यूट में Skip आर्गुमेंट रहता है, तब तक वह टेस्ट छोड़ दिया जाता है:

<Fact(Skip:="Remove this Skip property to run this test")>
Public Sub Lowercase_words()
    Assert.Equal("ROR", Abbreviate("Ruby on Rails"))
End Sub

टेस्ट चालू करने के लिए सिर्फ Skip आर्गुमेंट हटा दीजिए:

<Fact>
Public Sub Lowercase_words()
    Assert.Equal("ROR", Abbreviate("Ruby on Rails"))
End Sub

नया चालू किया गया टेस्ट पास हो जाने के बाद यही तरीका अगले छोड़े गए टेस्ट पर दोहराइए। जब सारे टेस्ट चालू हो जाएँ और पास हो जाएँ, तो आपका काम पूरा हो गया।