בדיקות תוכנה
סוגי הבדיקות > סוגי בדיקות עיקריים

בדיקות פונקציונליות (Functional) – לאימות פעילות המערכת. בדיקות אלו מבוססות על מסמך הדרישות ומסמך האפיון ומטרתן לבדוק כי המערכת עושה את מה שהיא צריכה ולא עושה את מה שאינה צריכה לעשות (valid and invalid testing).
בדיקות לא פונקציונליות (Non functional) – בדיקות אלו בודקות איך פועלת המערכת וכוללות בדיקות עומסים, ביצועים, שימושיות וסוגי בדיקות רבים נוספים (שחלקם מפורטים למטה).
בדיקות שימושיות (Usability) – בדיקות נוחות השימוש ויעילות העיצוב של האפליקציה ונגישות לבעלי מוגבלויות. לדוגמה: נוחות השימוש בתפריטים, ניווט נוח והתמצאות באתר.
בדיקות בינלאומיות (Internationalization and Localization) – בדיקות המתמקדות בשימוש בתוכנה בממשקים בשפות שונות. למשל – אתרי אינטרנט רבים (כמו ויקיפדיה) בהם יש דפים בשפות שונות, מבצעים בדיקות מהסוג הזה.
בדיקות ממשק לקוח (GUI) – בדיקות הפקדים והשדות במסך. התנהגות תקינה, פורמט של שדות, בהתאם לחוקיות המוגדרת ברמת המסך ולא הלוגיקה העסקית. לדוגמה: בדיקת מינימום ומקסימום תווים בשדה.
בדיקות שילוב מערכת (Compatibility) – לאימות יכולת שילוב התוכנה/רכיב תוכנה במערכת קיימת/חדשה (למשל – תאימות של התוכנה לעדכוני מערכת הפעלה, דפדפנים שונים, תוכנות אחרות שהתוכנה אמורה לעבוד בשילוב עימן, וכדומה).
בדיקות אלפא/בתא (Alpha/Beta) – בדיקות שמבוצעות על ידי קבוצת משתמשים מוגדרת סגורה (אלפא) או פתוחה (בתא) אשר משתמשים במוצר ומדווחים על תקלות הצפות תוך כדי שימוש שוטף.
בדיקות שפיות (Sanity) – בדיקות בסיסיות המאפשרות לזהות במהירות וביעילות אם הפונקציונליות הבסיסית של המוצר פועלת כנדרש, והמוצר במצב יציב.
בדיקות עשן (Smoke) – סוג נוסף של בדיקות הנועד לזהות במהירות את מצב היציבות של המוצר, על ידי גילוי מוקדם של תקלות המראות על כשל חמור ברכיב כלשהו במוצר. בניגוד לבדיקות שפיות, בדיקות עשן בדרך כלל מבוצעות בצורה יותר אינטואיטיבית וגמישה, ולא בהכרח לפי תסריטים קבועים מראש.
בדיקות הרס (Destructive) – בדיקות אלו נעשות במטרה להכשיל ולהרוס חלקים שונים של המערכת הנבדקת ובכך לבדוק את יכולת השרידות שלה, בדיקות אלו נעשות בשלב מאוחר של התהליך כאשר המערכת נמצאת במצב עמיד ויציב. בשוק קיימים מספר כלים המאפשרים לדמות בדיקות הרס. לדוגמה: Winner.
קיימים סוגי בדיקות נוספים המותאמים למאפייני הנדסת תוכנה נוספים (ilities).
בדיקת תאימות (Compatibility) – בדיקות הבודקות שהתוכנה יכולה להתאים את עצמה למערכות הפעלה שונות כמו Windows XP/7/8/10 או אם האתר תומך בדפדפנים שונים כמו Chrome/Firefox/Explorer.
בדיקת תחזוקתיות ׁ(Maintainability) – בדיקה שבודקת שאפשר לעדכן או לתקן את התוכנה אחרי הוצאתה לאור, בדיקה זו בודקת גם אם הקוד כתוב בצורה פשוטה.
בדיקת ביצועים ועומסים (Performance and Load) – בסוג בדיקות זה נבדקת יכולת התגובה של צד השרת במערכות שרת/לקוח בהן צפויים משתמשים רבים בו זמנית. בדיקות אלו מתמקדות במדידת זמני התגובה ובמציאת "נקודת השבירה" של המערכת. מלבד עומס הנובע מ"משתמשים וירטואליים" מדומים גם עומסים הנובעים מטרנזקציות וג'ובים המורצים ברקע, שלא כתוצאה ישירה מתהליכים עסקיים. בשוק קיימים מספר כלים המאפשרים לדמות משתמשים רבים, לדוגמה: LoadRunner, WebLoad, TeamSystem. בבדיקת ביצועים יש שלושה סוגי בדיקות: LOAD, STRESS ו-VOLUME. ב-LOAD בודקים אם המערכת עובדת עם מספר משתמשים רגיל ותחת זרימת נתונים נורמטיבית (לא חריגה), ב-STRESS בודקים אם המערכת עובדת עם מספר משתמשים הגבוה בהרבה מהרגיל וכמו כן שימוש במידע רב, תוך גרימת זעזועים (לדוגמה: ניתוק וחיבור משתמשים, שימוש וביטול פונקציונליות במערכת), זאת במטרה לאבחן מהן נקודות הקצה של המערכת. האחרונה, VOLUME, היא בדיקה שבודקת את התנהגות וגבולות המערכת תחת הצפת המערכת בנתונים וכמו בבדיקה הקודמת – בודקת את קצוות המערכת בשימוש בכמויות אדירות של מידע.
בדיקת מבניות (Structural) פרק זה לוקה בחסר. אנא תרמו לוויקיפדיה ו. ייתכן שתמצאו פירוט בדף השיחה. .
בדיקות הקשורות לשינויים/רגרסיה – בבדיקה זו יש שני סוגי בדיקותː
בדיקות אי פגיעה Regression .Regression & Re-Testing – רגרסיה, בדיקה חוזרת על מקומות שכבר נבדקו בהצלחה (גם איפה שאף פעם לא הייתה תקלה) . בדיקה זו מבצעים אחרי הטמעה של פיצ'ר חדש במערכת (בדרך כלל בגרסה חדשה), כדי לבדוק שהשינויים שביצעו בקוד לא קלקלו מה שהיה תקין בעבר.
Re-Testing – בדיקה חוזרת (נקראת גםː בדיקות אישור או וידוא). בדיקה חוזרת על מקום ספציפי לשם וידוא תיקון תקלה.