יום רביעי, 29 במרץ 2017

מהן סוגי הבדיקות ב - QA


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

בדיקות פונקציונליות (Testing  Functional)  

לאימות פעילות המערכת. בדיקות אלו מבוססות על מסמך הדרישות ומסמך האפיון ומטרתן לבדוק כי המערכת עושה את מה שהיא צריכה ולא עושה את מה שאינה צריכה לעשות (valid and invalid testing)

בדיקות ממשק לקוח (Testing GUI

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

בדיקות ביצועים (Testing Performance

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


בדיקות שפיות (Testing Sanity

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

בדיקות אבטחת מידע (Testing Security

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


בדיקות אינטגרציה (Testing Integration

 בדיקת שילוב יחידות תוכנה בהיקפים שונים, החל משתי יחידות ועד לכלל היחידות במערכת.


בדיקות מערכת (Testing System

 בדיקות המערכת בכללותה, בדרך כלל בראיית המשתמש של יכולות המערכת.


בדיקות קבלה (Testing Acceptance

בדיקות הנעשות על ידי המשתמש או הלקוח במטרה לוודא כי המערכת פועלת בהתאם לדרישות שהוגדרו במסמך הדרישות המקורי ובשינויי דרישה (change request) שהועברו במהלך מחזור חיי הפיתוח.

בדיקות שימושיות (Testing Usability

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

בדיקות התקנה Installation Testing))

 בדיקת תהליך התקנת המערכת בסביבת הייצור ובדיקת התקנת מערכות צד שלישי.

בדיקות התאמה (Testing (Compatibility 

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

בדיקות רגרסיה (Regression Testing

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




תגובה 1:

  1. תודה על המדריך המפורט. אני בדיוק עובד על פרויקט של בדיקת תוכנה לשילוט דיגיטלי והטיפים האלה ישמשו אותי

    השבמחק