קביעת מקרים לבדיקה לשאלות קידוד

Last updated: March 10, 2026

סקירה

מקרי מבחן עוזרים באימות הקוד של המועמדים. הם מהווים בסיס להערכה אוטומטית של הקוד של המועמד. מקרי מבחן כוללים קלט לקוד ופלט צפוי. לאחר שהמועמדים מגישים את הקוד, הוא רץ נגד כל מקרי המבחן. הפלט מהקוד של המועמד מושווה עם הפלט הצפוי כדי לבדוק אם מקרי המבחן עובר או נכשל.

מקרה מבחן לדוגמה עם הסבר יכול גם לסייע בהסברת הבעיה טוב יותר למועמדים. באופן אידיאלי, עליך להשתמש ב-2 עד 3 מקרי מבחן כאלה כדי לעזור למתכנת להבין את הבעיה. אנו ממליצים על סך הכל של 8 עד 15 (במקרה הטוב סך הכל של 10) מקרי מבחן שמכסים את כל התרחישים. מקרי המבחן צריכים להיות בגדלים שונים שמכסים רמות שונות של מורכבות. אין שני מקרי מבחן שיבחנו את אותו מושג. 

הערה: אנא עיין ב-מקרי מבחן בשאלת הקידוד שלך כדי להבין את השימוש במקרי מבחן בעת יצירת שאלות קידוד לבדיקות HackerRank.

סוגי מקרי מבחן

יש שני סוגים של מקרי מבחן לכל בעיה, מקרה מבחן לדוגמה ו-מקרה מבחן מוסתר.

מקרי מבחן לדוגמה

מקרי מבחן לדוגמה הם מקרי המבחן שהמועמדים יכולים לצפות בהם ולהשתמש בהם לאימות הקוד שלהם. הם רואים גם את הערכים של הקלט וגם את הפלט הצפוי עבור מקרי המבחן האלה. בעת יצירת מקרי המבחן, תוכל לסמן מקרי מבחן מסוימים כמקרי מבחן לדוגמה. 

לדוגמה, ראה את ההמחשה למטה של מקרה מבחן לדוגמה שהוגדר לשאלה קידוד. השאלה דורשת מהמתמודד לכתוב קוד כדי למצוא את התו הלא חוזר הראשון במחרוזת נתונה. 

Sample_Test_Cases.jpg

במבחן, כאשר המועמד כותב ומקמפל את הקוד לשאלה, מקרה המבחן לדוגמה מאומת נגד הקוד של המועמד. המועמד יכול לצפות בתוצאות הרצת מקרה המבחן לדוגמה יחד עם הערכים של הקלט והפלט הצפוי כפי שהוגדר על ידך. צפייה בתוצאות הרצת מקרה המבחן לדוגמה עוזרת למועמדים להבין את התוצאות הצפויות של הקוד שלהם. המועמדים יכולים גם להוריד את מקרי המבחן לדוגמה שלהם.

התמונה הבאה מציגה את תצוגת המועמד של מצב ביצוע מבחני הדגמה לאחר הקומפילציה של הקוד במבחן.Test_Case_execution_status.jpg

מבחני דגימה מוסתרים

בעת הוספת מבחן לתוך שאלת קידוד שלך, אם אינך מסמן אותו כמבחן דגימה, הוא נחשב כמוסתר. מבחני דגימה מוסתרים התפתחו מעידן התכנות התחרותי.

אתה יכול לכלול מקרים קצה שונים כמבחנים מוסתרים כדי להעריך מועמדים במצבים שונים. כאשר מועמד מריץ את הקוד שלו, המבחנים המוסתרים מצוינים על ידי סמל הנעילה .

בניגוד למבחני דגימה, המועמדים לא יכולים לראות את הערכים של הקלט והתוצאה הצפויה עבור מבחנים מוסתרים אלה. עם זאת, הם יכולים לראות את הפלט שלהם ואת הפלט שניתן לדיבוג כאשר הם לוחצים על אחת מהאפשרויות של המבחן המוסתר. תכונה זו ניתנת למועמדים כדי לספק להם חווית דיבוג טובה יותר.

שקול שאלה בקידוד שבה מועמד נדרש לכתוב קוד כדי למצוא את ההאות הלא חוזרת הראשונה במחרוזת נתונהHidden_Test_Case.jpg

במבחן, כאשר מועמד כותב ומריץ את הקוד לשאלה זו, המבחן המוסתר מאומת על ידי הקוד של המועמד כדי להחזיר את תוצאות ביצוע המבחן. אם הקוד של המועמד מצליח להריץ את המבחנים המוסתרים ומחזיר את הפלט הצפוי, אז המועמד משיג את הציון שהוקצה למבחן זה.

mceclip1.png

השבתת הפלט למבחני בד מוסתרים

אתה יכול גם לבחור לא להציג את הפלט של מבחני הבד המוסתרים למועמדים. כדי להשבית את הפלט למבחני בד מוסתרים, עקוב אחר השלבים שלהלן.

  • בדף הבית Tests, לחץ על המבחן הרצוי.
question.jpg
  • לאחר לחיצה על השאלה, לחץ על לשונית הגדרות ואז על האפשרות שאלות מהצד השמאלי.
question_settings_.jpg
  • לאחר לחיצה על לשונית שאלות, גלול למטה, תמצא את האפשרות להשבית את הפלט למבחני הבד המוסתרים כפי שמוצג למטה. עם זאת, זה לא מומלץ מאחר והצגת הפלט מסייעת למועמדים לאבחן את הקוד שלהם ביעילות. האפשרות להציג את הפלט נבחרת כברירת מחדל. אם ברצונך להסתיר את הפלט שלך, תוכל לבטל את בחירת תיבת הסימון הצג פלט למבחני בד מוסתרים.
hidden_test_case_output.jpg

הערה: הדוחות שלנו מצביעים על כך שמועמדים נוטים לאבד הרבה מזמנם במבחן בזמן חיפוש פתרון או בדיקה עקב מבחני בד מוסתרים. כדי להפחית את האתגר הזה ולספק חווית בדיקה טובה יותר למועמדים, HackerRank שואף לעבור ממצבי בדיקה מוסתרים בעתיד ולהציג חווית דיבוג מבוססת נקודות עצירה למועמדים.

ציונים

לא כל מבחני הבד הם באותה רמת קושי. בעת יצירת מבחני הבד, עליך להבטיח שהנקודות שמוקצות למבחני הבד הקשים יותר מאשר לאלה הקלים יותר. זה מוביל להבדלה טובה יותר בין מתכנתים מצטיינים, טובים וממוצעים. סכום הנקודות של כל מבחני הבד הוא הסכום הכולל שמוקצה לשאלה מסוימת. תוכל להקצות אפס נקודות למבחני בד לדוגמה אם נדרש. הציון הכולל לשאלה תכנות הוא סכום הנקודות של כל מבחני הבד שהועברו בהצלחה.

בתמונה הבאה, תוכל לראות את דוח המבחן המפורט של המועמד ב-HackerRank המציג את הציון שהושג עבור השאלה על בסיס מצב ביצוע המבחן.Test_Report_status_of_score_achieved_for_Test_case.jpg

סנכרון מבחני בד עם תבניות קוד

כאשר אתה משתמש בתבניות קוד אוטומטיות, ודא שהקלט והפלט הצפוי תואמים לתבניות הקוד. תוכל לעיין בחלק האחרון כדי להבין זאת.

לדוגמה:

  • אם הקלט הוא מערך, תמיד תקרא את "n" (מסמן את גודל המערך) ראשון ואז תקרא "n" אלמנטים של מערך ב"n" שורות נפרדות. זה נדרש כדי להבטיח עקביות בקריאת הקלט בשפות שונות.

  • אם הקלט הוא רשימת קישורים, תמיד תקרא את "n" (מסמן את מספר האלמנטים שיש להוסיף לרשימת הקישורים) ואז תקרא "n" אלמנטים ב"n" שורות נפרדות.

עיין בנושא איך להוסיף מבחן בד חדש למידע על יצירה והוספת מבחני בד לשאלות שלך.