الاختبار في مسار Elm

تعلّم كيفية اختبار تمارين Elm على Exercism


توجد اختبارات مشروع 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 على كودك قبل تسليمه، بل وضبطه في محرر النصوص لديك ليُنسّق الكود تلقائيًا عند الحفظ.