מהן בדיקות תוכנה?
בדיקות התוכנה הן תהליך הערכה של התוכנה כדי לזהות הבדלים בין הקלט הנתון לתוצר הצפוי. הבדיקות מעריכות גם את מאפייני התוכנה ואת איכות המוצר.
אימות – תהליך שמטרתו לוודא שהמוצר עונה על התנאים שנדרשו בשלב הפיתוח הראשוני. במילים אחרות, האימות מוודא שהמוצר אכן מתנהג כנדרש.
תיקוף – תהליך שמטרתו לוודא שהמוצר עומד בדרישות שצוינו בשלב הסופי של הפיתוח. במילים אחרות, התיקוף מוודא שהמוצר אכן בנוי בהתאם לדרישות הלקוח.
בדיקות תוכנה בסיסיות
בדיקות התוכנה הבסיסיות מתחלקות לשתיים:
- בדיקת "קופסה שחורה" (Blackbox) – טכניקת בדיקה שמתעלמת מהמנגנון הפנימי של המערכת ומתמקדת בפלט (output) שנוצר כנגד כל קלט (input), ובביצוע של המערכת. בדיקה זו נקראת גם בדיקה פונקציונלית. בדיקות הקופסה השחורה משמשות לעיתים קרובות לצורך תיקוף.
- בדיקת "קופסה לבנה" (Whitebox) – טכניקת בדיקה שמתייחסת גם למנגנון הפנימי של המערכת. בדיקה זו נקראת גם בדיקה מבנית ובדיקת קופסת זכוכית. בדיקות הקופסה הלבנה משמשות לעיתים קרובות לצורך אימות.
תהליך בדיקות התוכנה יכול להיות גם חלק מאותם שירותי מחשוב לעסקים ואמור להיעשות במהלך הפיתוח. למעשה, בדיקות התוכנה הן תהליך האימות והתיקוף.
סוגי בדיקות תוכנה
קיימים סוגי בדיקות תוכנה רבים, כגון: בדיקת יחידה, בדיקת אינטגרציה, בדיקת פונקציונליות, בדיקת מערכת, בדיקת לחץ, בדיקת ביצועים, בדיקת שמישות, בדיקת קבלה, בדיקת רגרסיה ובדיקת ביתא.
- בדיקת יחידה – זוהי בדיקה של יחידה פרטנית או של קבוצה של יחידות שקשורות זו לזו. בדיקה זו נופלת תחת בדיקות הקופסה הלבנה. הבדיקה נעשית לעיתים קרובות על ידי המתכנת על מנת לבדוק שהיחידה שיישם יוצרת את הפלט הצפוי כנגד הקלט הנתון.
- בדיקת אינטגרציה – זוהי בדיקה שבה משלבים קבוצה של רכיבים כדי להפיק פלט. אם יש קשר בין רכיבי התוכנה ורכיבי החומרה, נבדקת גם האינטראקציה בין התוכנה לחומרה. בדיקה זו עשויה ליפול תחת שתי הבדיקות – בדיקת קופסה לבנה ובדיקת קופסה שחורה.
- בדיקת פונקציונליות – בדיקת הפונקציונליות היא זו שאמורה לוודא שהפונקציונליות הנדרשת שצוינה בדרישות המערכת, אכן עובדת. בדיקה זו נופלת תחת בדיקת הקופסה השחורה.
- בדיקת מערכת – זוהי בדיקה שאמורה להבטיח שכאשר מתקינים את התוכנה בסביבות שונות (לדוגמה, מערכות הפעלה) היא עדיין עובדת. בדיקת מערכת נעשית ביישום מלא של המערכת והסביבה. בדיקה זו נופלת תחת בדיקת הקופסה השחורה.
- בדיקת לחץ – בדיקת לחץ אמורה להעריך כיצד מתנהגת המערכת בתנאים גרועים. הבדיקה מתבצעת אל מעבר לגבולות המפרטים. בדיקה זו נופלת תחת בדיקת הקופסה השחורה.
- בדיקת ביצועים – בדיקה שאמורה להעריך את מהירות המערכת ויעילותה ולוודא שהיא יוצרת תוצאות בתוך פרק הזמן שהוגדר בדרישות הביצוע. בדיקה זו נופלת תחת בדיקת הקופסה השחורה.
- בדיקת שמישות – בדיקה שמתבצעת מנקודת מבטו של הלקוח, על מנת להעריך את מידת הידידותיות למשתמש, את הקלות שבה הלקוח יכול ללמוד אותה לאחר שלמד כיצד להשתמש בה, מהי מידת המיומנות של ביצועי הלקוח, עד כמה השימוש בעיצוב התוכנה היא מהנה. בדיקה זו נופלת תחת בדיקת הקופסה השחורה.
- בדיקת קבלה – בדיקה שנעשית לעיתים קרובות על ידי הלקוח, על מנת להבטיח שהמוצר אכן עומד בדרישות ופועל כצפוי. הבדיקה נופלת תחת בדיקת קופסה שחורה.
- בדיקת רגרסיה – בדיקה שמתבצעת לאחר שינוי במערכת, במרכיב או בקבוצת יחידות – כדי להבטיח שהשינוי פועל כראוי ואינו מזיק או משפיע על מודולים אחרים ויוצר תוצאות בלתי צפויות. הבדיקה נופלת תחת בדיקת קופסה שחורה.
- בדיקת בטא – בדיקה שנעשית על ידי משתמשי הקצה, צוות שלא שייך לפיתוח, או שחרור הגרסה המלאה לציבור הרחב, שידוע כגרסת בטא. מטרת הבדיקה היא לכסות שגיאות בלתי צפויות. הבדיקה נופלת תחת בדיקת קופסה שחורה.