Elm ट्रैक पर टेस्टिंग

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


किसी Elm प्रोजेक्ट के टेस्ट उस प्रोजेक्ट की tests/ सबडायरेक्टरी में रहते हैं। आप हर अभ्यास का टेस्ट सूट उस अभ्यास की रूट डायरेक्टरी से चला सकते हैं।

$ cd ~/exercism/elm/hello-world
$ elm-test

बदलावों पर नज़र रखिए

बदलाव सेव करते ही टेस्ट अपने आप फिर से चल जाते हैं:

$ elm-test --watch

टेस्ट ड्रिवन डेवलपमेंट का तरीका

ज़्यादातर अभ्यासों में टेस्ट पहले से ही tests/Tests.elm फाइल में लिखे होते हैं। आपका लक्ष्य है कि आप src/<exercise>.elm फाइल में ज़रूरी कोड लिखकर इन टेस्टों को पास कराएँ। सबसे पहले उस टेस्ट पर ध्यान दीजिए जो फेल हो रहा है, उसे ठीक कीजिए। फिर टेस्ट फाइल में अगले skip <| स्निपेट को हटा दीजिए या कॉमेंट कर दीजिए, और यही तब तक दोहराइए जब तक सारे टेस्ट पास न हो जाएँ।

अटक गए हैं?

आपका पहला लक्ष्य यह है कि आपका कोड कंपाइल हो जाए, भले ही उसमें Debug.todo मौजूद हो। अगर लगे कि कोई चीज़ कैसे करनी है, यह आपको नहीं पता, तो उस हिस्से को निकालकर एक अलग फंक्शन बना लेना अक्सर काम आता है, जिसे अभी लागू नहीं किया गया हो।

complexOperationOnMultipleStrings : List String -> List String
complexOperationOnMultipleStrings allStrings =
    List.map complexOperation allStrings


complexOperation : String -> String
complexOperation input =
    Debug.todo "Extracted operation into its own function"

इस अलग किए गए फंक्शन पर टाइप एनोटेशन जोड़ने से दो फायदे मिलते हैं: इससे आपकी सोच भी साफ होती है और कंपाइलर भी आपको बेहतर एरर संदेश दे पाता है।

अपने कोड को साफ-सुथरा कीजिए

कोड जमा करने से पहले अपने कोड पर elm-format चलाने के बारे में सोचिए। और भी अच्छा होगा कि आप इसे अपने टेक्स्ट एडिटर में सेट कर लें, ताकि सेव करते ही कोड अपने आप फॉर्मेट हो जाए।