שאלות נפוצות
ציר זמן
צ'אט
פרספקטיבה
JUnit
מוויקיפדיה, האנציקלופדיה החופשית
Remove ads
JUnit הוא כלי פתוח וחופשי לבדיקות יחידה בשפת התכנות Java. הכלי פותח במשותף על ידי קנט בק ואריך גמא כחלק מעבודתם בנושא פיתוח מונחה-בדיקות ופיתוח תוכנה זריז. JUnit מתבסס על עבודה מוקדמת יותר של קנט בק בכלי SUnit שיועד לשפת התכנות Smalltalk. הכלי הורחב בהמשך לשפות תכנות רבות נוספות ומהווה, נכון לשנת 2007, נדבך יסודי בעבודת התכנות של מתכנתים רבים בעולם.
JUnit מורכב משני חלקים עיקריים: ספריית פיתוח וכלי גרפי להצגת תוצאות הריצה. ספריית הפיתוח מספקת למתכנת תשתית נוחה לפיתוח בדיקות יחידה שונות. בגמר הפיתוח, המתכנת משתמש בכלי הגרפי, שבדרך כלל הוא חלק אינטגרלי מסביבת הפיתוח, כדי להריץ את הבדיקות. הכלי מספק משוב ויזואלי על תוצאות הריצה, באמצעות פס חיווי ירוק (הצלחה) או אדום (כישלון).
תמיכה מובנית בכלי הבניה Ant ו-Maven מאפשרת להריץ בקלות קבוצה של בדיקות JUnit כחלק מהליך הבנייה של המערכת הנבדקת.
Remove ads
דוגמה לבדיקת יחידה
הדוגמה הבאה מציגה תוכנית בדיקה פשוטה בשפת התכנות Java. התוכנית עושה שימוש בספריית הפיתוח של JUnit v4. מטרת הבדיקה היא לבדוק נכונות של ביטוי אריתמטי פשוט. בעת הרצת הבדיקה, ייצור הכלי מופע חדש של המחלקה, ויריץ את המתודות המבוארות ב-@Test
, אחת אחרי השנייה. בגמר הריצה, יציג הכלי הגרפי את תוצאות הריצה בצורה ברורה באמצעות פס החיווי.
public class HelloJUnitWorld {
@Test
public void testMultiplication() {
// Testing if 3*2=6
assertEquals ("Multiplication", 6, 3*2);
}
}
Remove ads
שיטות ביאור
Remove ads
בדיקה אם הפונקציה עברה את הבדיקה
סכם
פרספקטיבה
על מנת לבדוק אם התוצאות שקיבלנו בפונקציית הבדיקה תואמות את התוצאות שציפינו לקבל נשתמש במחלקת assert. זוהי מחלקה סטטית הקובעת את תוצאת הבדיקה על ידי השוואה של תוצאת הפונקציה לתוצאה הרצויה. המחלקה קיימת גם ב-JUnit וגם ב-NUnit, כאשר השוני הוא בצורת הכתיבה. מאפשר לאמת את הקוד:
- על ידי בדיקת ביטויים בוליאניים
- על ידי השוואת סוגים בסיסיים
- על ידי השוואת משתנים (by reference)
- על ידי השוואת מערכים (by reference)
סוגים של assert שניתנים לשימוש:
- assertNotNull(Object object, String message);
- assertNotSame(Object expected, Object actual);
- assertNotSame(Object expected, Object actual, String message);
- assertNull(Object object);
- assertNull(Object object, String message);
- assertSame(Object expected, Object actual);
- assertSame(Object expected, Object actual, String message);
- assertTrue(boolean condition);
- fail(String message);
- assertEquals(Type expected, Type actual);
- assertEquals(Type expected, Type actual, Type delta);
- assertEquals(Type expected, Type actual, String message);
- assertEquals(Type expected, Type actual, Type delta, String message);
- assertFalse(boolean condition);
- assertFalse(boolean condition, String message);
- assertNotNull(Object object);
- assertTrue(boolean condition, String message);
- fail();
אופן הרצת הבדיקות
הרצת הבדיקות ב-JUnit מתבצעת בתוך Eclipse ואין צורך להתקין תוספים נוספים.
השוואה בין JUnit ל-NUnit
NUnit היא שיטת בדיקה הדומה ל-Junit, כאשר השוני העיקרי ביניהן היא שפת הפיתוח שבה משתמשים. עם זאת, קיימים עוד מספר הבדלים מזעריים מבחינת תחביר ואופן הרצת הבדיקות.
Remove ads
לקריאה נוספת
- JUnit in Action. ISBN 1-930110-99-5.
- Beck, Kent (2004). JUnit Pocket Guide, O'Reilly. ISBN 0-596-00743-4.
קישורים חיצוניים
אתר האינטרנט הרשמי של JUnit
אתר האינטרנט הרשמי של JUnit
- בדיקות יחידה עם JUnit
- אנטי-תבניות בשימוש ב-JUnit וגם עוד אנטי-תבניות
- הצצה מוקדמת על JUnit 4
- היכרות עם התכונות החדשות של JUnit 4
- מדריך JUnit
- השוואה בין NUnit ל-JUnit
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads