בדיקות אד-הוק הן סוג של בדיקות תוכנה שמפתחים וחברות תוכנה מיישמות בעת בדיקת האיטרציה הנוכחית של התוכנה. צורת בדיקה זו נותנת רמה גבוהה יותר של תובנה לגבי התוכנית, ומאתרת בעיות שאולי בדיקות קונבנציונליות לא יוכלו להדגיש.
חשוב ביותר שלצוותי הבדיקה תהיה הבנה מלאה של תהליך הבדיקות האד-הוק, כך שהם ידעו כיצד לעקוף את האתגרים שלו ולוודא שהצוות יכול ליישם טכניקה זו בהצלחה.
הידיעה בדיוק כיצד פועלות בדיקות אד-הוק, ואילו כלים יכולים להקל על היישום שלה, מאפשרת לעסק לשפר ללא הרף את נהלי אבטחת האיכות שלו. תהליך הבדיקה הרשמי עוקב אחר כללים מאוד ספציפיים, מה שעלול לגרום לצוות להחמיץ באגים מסוימים – בדיקות אד-הוק יכולות לעקוף את הנקודות העיוורות הללו ולבדוק במהירות כל תכונת תוכנה.
במאמר זה, אנו בוחנים מקרוב בדיקות אד-הוק וכיצד תוכלו להשתמש בהן לטובתכם בעת פיתוח מוצר תוכנה.
בדיקות אד-הוק משמעות: מהי בדיקות אד-הוק?
בדיקות אד-הוק הן תהליך אבטחת איכות המונע כללים פורמליים ותיעוד – עוזר לבודקים למצוא שגיאות ביישום שלהם שגישות קונבנציונליות אינן יכולות לזהות. זה בדרך כלל דורש ידע מקיף של התוכנה לפני תחילת הבדיקה – כולל הבנה של פעולתה הפנימית של התוכנית. בדיקות אד-הוק אלו מטרתן לשבור את האפליקציה בדרכים המשקפות את קלט המשתמש, תוך התחשבות במצבים פוטנציאליים שונים כדי שהמפתחים יוכלו לתקן את כל הבעיות הקיימות.
היעדר התיעוד הוא מרכזי בטכניקה זו, שאינה כוללת רשימת בדיקה או מקרי בדיקה שידריכו בודקים על פני תכונות האפליקציה. בדיקות אד-הוק עוסקות לחלוטין בבדיקת התוכנה בכל דרך שצוות מחליט שהיא יעילה באותו רגע ספציפי. זה עשוי לקחת בחשבון בדיקות פורמליות קיימות, אבל יכול גם פשוט לכלול ביצוע של כמה שיותר בדיקות בזמן (המוגבל כנראה) המוקצב לטכניקה זו.
1. מתי ולמה צריך לעשות בדיקות אד-הוק בבדיקות תוכנה?
הסיבה העיקרית שחברות עורכות בדיקות אד-הוק היא בגלל היכולת שלהן לחשוף שגיאות שגישות מסורתיות לא יכולות למצוא. זה יכול להיות מכל מספר סיבות, כגון מקרי בדיקה קונבנציונליים בעקבות תהליך סטנדרטי במיוחד שאינו יכול להסביר את הייחודיות של היישום.
כל סוג בדיקה יכול להציע נקודות מבט חדשות וגישות מעניינות לאבטחת איכות – זה גם מראה בעיות באסטרטגיית הבדיקה הרגילה. לדוגמה, אם בדיקות אד-הוק יכולות לזהות חשש שמקרי הבדיקה של הצוות אינם מטפלים בו, הדבר מצביע על כך שהם יכולים להפיק תועלת מכיול מחדש של מתודולוגיית הבדיקה שלהם.
בודקים יכולים לבצע בדיקות אד-הוק בכל שלב בתהליך הבדיקה. זה משמש בדרך כלל כהשלמה לאבטחת איכות מסורתית (ורשמית יותר), ועם זאת בחשבון, בודקים עשויים לבצע בדיקות אד-הוק בזמן שעמיתיהם עורכים בדיקות רשמיות יותר. עם זאת, הם עשויים במקום זאת להעדיף לשמור בדיקות אד-הוק עד לאחר תהליך הבדיקה הפורמלי כמעקב המכוון ספציפית לנקודות עיוורות פוטנציאליות.
בדיקות אד-הוק יכולות להיות שימושיות גם כאשר הזמן מוגבל במיוחד בגלל היעדר תיעוד – הזמן הנכון תלוי בחברה ובגישה המועדפת עליה.
2. כאשר אינך צריך לבצע בדיקות אד-הוק
אם אין מספיק זמן לביצוע בדיקות אד-הוק ורשמיות כאחד, חשוב שהצוות יתן עדיפות לאחרון שכן הדבר מבטיח כיסוי מבחן משמעותי – גם אם עדיין קיימים פערים מסוימים.
אם הבדיקות הפורמליות של הצוות מוצאות באגים הדורשים תיקון, בדרך כלל עדיף לחכות עד לאחר שהמפתחים ישלימו את השינויים הדרושים כדי לבצע בדיקות אד-הוק. אחרת, התוצאות שהם מספקים עלולות להתיישנות בקרוב, במיוחד אם הבדיקות מתייחסות לרכיב שכבר חווה באגים.
בנוסף לכך, בדיקות אד-הוק חייבות להתרחש לפני שלב בדיקות הבטא.
3. מי מעורב בבדיקות אד-הוק?
ישנם מספר תפקידי מפתח המעורבים בתהליך בדיקות אד-הוק, כולל:
• בודקי תוכנה הם חברי הצוות העיקריים שעורכים בדיקות אד-הוק. אם מבצעים בדיקת חבר או צמד, אז כמה מהבודקים האלה יעבדו יחד על אותם רכיבים.
• מפתחים עשויים להשתמש באופן עצמאי בבדיקות אלה לפני שלב הבטחת האיכות הפורמלי כדי לבדוק במהירות את התוכנה שלהם, אם כי זה פחות מעמיק מבדיקות אד-הוק ייעודיות.
• ראשי צוות או מחלקות מאשרים את אסטרטגיית הבדיקה הכוללת – עוזרים לבודקים לקבוע מתי להתחיל בבדיקות אד-הוק וכיצד לבצע אותן מבלי לשבש בדיקות אחרות.
היתרונות של בדיקות אד-הוק
היתרונות של בדיקות אד-הוק בבדיקות תוכנה כוללים:
1. רזולוציות מהירות
מכיוון שבדיקות אלו אינן כוללות תיעוד תכוף לפני, במהלך או לאחר הבדיקות, ניתן לצוותים לזהות בעיות הרבה יותר מהר. הפשטות הזו מציעה חופש אדיר לבודקים.
לדוגמה, אם הם בודקים רכיב ולא יכולים לזהות שגיאות כלשהן, הצוות יכול פשוט לעבור לבדיקה הבאה מבלי לציין זאת במסמך.
2. משלים סוגי בדיקות אחרים
אף אסטרטגיית בדיקה אינה מושלמת, ובדרך כלל בלתי אפשרי להשיג כיסוי של 100% – אפילו עם לוח זמנים מקיף. תמיד יהיו פערים בבדיקות הקונבנציונליות ולכן חשוב שחברות ישלבו מספר גישות.
בדיקות אד-הוק שואפות במיוחד למצוא את הבעיות שהבדיקות הפורמליות אינן יכולות לכסות – הבטחת כיסוי בדיקה כולל רחב יותר.
3. ביצוע גמיש
בדיקות אד-הוק יכולות להתרחש בכל נקודה בתהליך אבטחת האיכות לפני בדיקות בטא, מה שמאפשר לחברות ולצוותים להחליט מתי עדיף לבצע את הבדיקות הללו. הם עשויים לבחור לבצע בדיקות אד-הוק במקביל לבדיקות קונבנציונליות או לחכות עד לאחר מכן – לא משנה מה, הצוות מרוויח מהבחירות העומדות לרשותם.
4. שיתוף פעולה רב יותר
מפתחים מעורבים יותר בתהליך הזה מאשר צורות רבות אחרות של בדיקות – במיוחד אם החברה משתמשת בבדיקות חברים וזוגות.
כתוצאה מכך, המפתחים מקבלים תובנה טובה יותר לגבי היישומים שלהם ועשויים להיות מסוגלים לטפל בבאגים ברמה גבוהה יותר. זה עוזר לשפר עוד יותר את האיכות הכוללת של התוכנה.
5. נקודות מבט מגוונות
בדיקות אד-הוק יכולות להראות את האפליקציה מזוויות חדשות, ולעזור לבודקים לעסוק בתכונות הללו בדרכים חדשות. פרספקטיבות נוספות הן קריטיות במהלך הבדיקה, מכיוון שלבדיקות פורמליות יש לרוב פערים קלים לפחות.
אם בודקים אד-הוק משתמשים בתוכנה מתוך כוונה ספציפית לשבור אותה, הם יוכלו לאתר את גבולות התוכנית ביתר קלות.
אתגרים של בדיקות אד-הוק
לתהליך הבדיקה האד-הוק יש גם כמה אתגרים, כגון:
1. קושי בדיווח
היעדר תיעוד הופך את הבדיקות האד-הוק למהירות הרבה יותר, אך יכול גם להקשות על דיווח עבור כל דבר אחר מלבד בעיה מרכזית.
לדוגמה, בדיקה אחת שנערכה בעבר עשויה להפוך לרלוונטית יותר במועד מאוחר יותר למרות שלא תוביל בתחילה לתוצאות משמעותיות. ללא תיעוד מקיף, ייתכן שהצוות לא יוכל להסביר את הבדיקות הללו.
2. פחות חוזר
לפי קווים דומים, הבודקים עשויים שלא להיות מודעים לחלוטין למצב המדויק הדרוש כדי לגרום לתגובות שהם רואים. לדוגמה, בדיקה אד-הוק שמחזירה שגיאה עשויה שלא להכיל מספיק מידע כדי שהצוות יבצע פעולה. ייתכן שהם לא מודעים כיצד לחזור על הבדיקה הזו ולקבל את אותה תוצאה.
3. דורש ניסיון בתוכנה
מכיוון שהמהירות היא המפתח בכל בדיקות אד-הוק והיא כרוכה בדרך כלל בניסיון לשבור את האפליקציה, חשוב שלבודקים אלו תהיה הבנה אינטימית של התוכנית הזו.
הידיעה כיצד זה עובד מאפשרת לבודקים לשבור ולתפעל את התוכנה בדרכים נוספות, אך הדבר עשוי להגביר משמעותית את דרישות המיומנות לבדיקות אד-הוק.
4. אחריות מוגבלת
חוסר תיעוד עלול לגרום ליותר בעיות מסתם דיווח לקוי; זה גם יכול להאריך בטעות את תהליך הבדיקה, ולהשפיע על התועלת של בדיקות אד-הוק מהירות.
בודקים יכולים להתקשה לעקוב אחר ההתקדמות שלהם ללא תיעוד מספיק לאורך כל שלב. הדבר עלול אפילו להוביל לכך שהם יחזרו על בדיקה שבודקים אחרים כבר סיימו.
5. עשוי שלא לשקף את חווית המשתמש
המטרה של כמעט כל סוג בדיקה היא לקחת בחשבון שגיאות המשפיעות על משתמשי קצה בדרך כלשהי. בדיקות אד-הוק מסתמכות בעיקר על בודק מנוסה שמנסה לחקות משתמש לא מנוסה וזה צריך להיות עקבי בכל בדיקה עד וכולל ניסיונותיו לשבור את האפליקציה.
מאפיינים של מבחנים אד-הוק
המאפיינים העיקריים של מבחני אד-הוק מוצלחים כוללים:
1. חוקר
העדיפות העיקרית של בדיקות אד-הוק היא לזהות שגיאות באפליקציה באמצעות טכניקות שבדיקות קונבנציונליות אינן מתחשבות בהן. בדיקות אד-הוק סורקות תוכנה זו במטרה מפורשת למצוא חורים בהליך הבדיקה של הצוות, כולל כיסוי מקרי הבדיקה שלהם.
2. לא מובנה
לבדיקות אד-הוק אין בדרך כלל תוכנית מוגדרת מעבר לביצוע בדיקות רבות ככל האפשר מחוץ לגבולות האופייניים של אבטחת איכות פורמלית. בודקים יקבצו בדרך כלל את הבדיקות לפי רכיבים מטעמי נוחות, אבל אפילו זה לא הכרחי – הם עשויים אפילו להמציא את הבדיקות תוך כדי ביצוען.
3. מונחה ניסיון
בודקים אד-הוק משתמשים בניסיון התוכנה הקיים שלהם כדי להעריך אילו בדיקות יספקו את היתרונות הרבים ביותר ויטפלו בנקודות עיוורות נפוצות בבדיקות רשמיות.
למרות שתהליך הבדיקה עדיין לא מובנה לחלוטין, הבודקים מיישמים את הידע שלהם על בדיקות אד-הוק קודמות בין היתר תוך החלטה על האסטרטגיה שלהם.
4. רחב טווח
אין מדריכים מדויקים לאילו בדיקות הצוות צריך לבצע במהלך בדיקות אד-הוק, אבל הם בדרך כלל מכסים מגוון רכיבים – אולי עם התמקדות רבה יותר בהיבטים הרגישים יותר של האפליקציה. זה עוזר לבודקים להבטיח שהבדיקות שלהם מסוגלות להשלים באופן מלא את הבדיקות הפורמליות.
מה אנחנו בודקים במבחנים אד-הוק?
צוותי אבטחת איכות בודקים בדרך כלל את הדברים הבאים במהלך בדיקות אד-הוק:
1. איכות תוכנה
בדיקות אלו מטרתן לזהות שגיאות באפליקציה שבדיקות קונבנציונליות אינן יכולות לגלות; המשמעות היא שהתהליך בודק בעיקר את הבריאות הכללית של היישום.
ככל שבדיקות אד-הוק יכולות לאתר יותר באגים, כך מפתחים יכולים ליישם יותר שיפורים לפני המועד האחרון שלהם.
2. מקרי מבחן
בדיקות אד-הוק בדרך כלל אינן מיישמות מקרי בדיקה – וזה במיוחד כדי שהצוות יוכל לחקור עד כמה הם יעילים במתן כיסוי נרחב. סביר להניח שמקרי הבדיקה אינם מספקים אם בדיקות אד-הוק יכולות למצוא שגיאות שתהליכי בדיקה קונבנציונליים לא יכולים.
3. צוות בדיקות
המטרה יכולה להיות גם לבדוק את הכישורים והידע של צוות הבדיקות, גם אם מקרי המבחן מספקים. לדוגמה, המתודולוגיה שלהם ליישום המקרים עשויה להיות לא מספקת ובדיקות אד-הוק עשויות להיות קריטיות לטיפול בפערים הנובעים בכיסוי הבדיקות.
4. מגבלות תוכנה
בדיקות אד-הוק מבקשות גם להבין את מגבלות האפליקציה – כמו איך היא מגיבה לכניסות לא צפויות או לעומסים גבוהים של המערכת. הבודקים יכולים לחקור ספציפית את הודעות השגיאה של התוכנית ואת ביצועי היישום הזה כאשר הם נמצאים בלחץ משמעותי.
מנקה קצת בלבול:
בדיקות אד-הוק ובדיקות חקרניות
יש אנשים הרואים בבדיקות אד-הוק ובוחן שם נרדף, אם כי האמת מורכבת מזה.
1. מהי בדיקות חקרניות?
בדיקות חקר מתייחסות להליכי אבטחת איכות החוקרים את התוכנה מנקודת מבט הוליסטית ומשלבים באופן ספציפי את תהליכי הגילוי והבדיקה לשיטה אחת. זהו בדרך כלל דרך ביניים בין בדיקות מובנות לחלוטין לבין בדיקות אד-הוק לחלוטין.
בדיקות חקר עובדות בצורה הטובה ביותר בתרחישים ספציפיים, כגון כאשר יש צורך במשוב מהיר או אם הצוות חייב לטפל במקרים של קצה. סוג זה של בדיקות בדרך כלל ממצה את מלוא הפוטנציאל שלו כאשר הצוות משתמש בבדיקות סקריפטים לצדו.
2. הבדלים בין בדיקות חקרניות
ובדיקות אד-הוק
ההבחנה הגדולה ביותר בין בדיקות אד-הוק לבדיקות חקרניות היא השימוש של הראשונים בתיעוד כדי להקליט ולהקל על הבדיקות שלו, בעוד שבדיקות אד-הוק מונעות זאת לחלוטין. בדיקות חקר שמות יותר דגש על חופש מבחן, אך לעולם לא באותה רמה כמו גישה אד-הוק שאינה מובנית לחלוטין.
בדיקות חקר כוללות גם למידה על האפליקציה ועל פעולתה הפנימית במהלך הבדיקות הללו – לבודקים אד-הוק יש לרוב ידע מקיף על הפונקציונליות של התוכנה לפני שהם מתחילים.
סוגי מבחנים אד-הוק
ישנן שלוש צורות עיקריות של בדיקות אד-הוק בבדיקות תוכנה, כולל:
1. בדיקת קופים
אולי הסוג הפופולרי ביותר של בדיקות אד-הוק, מבחני קופים הם אלו הכוללים צוות שמסתכל באופן אקראי על רכיבים שונים.
זה מתרחש בדרך כלל במהלך תהליך בדיקת היחידה ומבצע סדרה של בדיקות ללא מקרי בדיקה. הבודקים חוקרים באופן עצמאי את הנתונים בדרכים לא מובנות לחלוטין, ומאפשרים להם לבחון את המערכת הרחבה יותר ואת יכולתה לעמוד בפני עומס עז מתשומות המשתמש.
התבוננות בפלט של טכניקות בלתי-כתובות אלו מסייעת לצוות הבדיקה לזהות שגיאות שבדיקות יחידות אחרות החמיצו עקב חסרונות בשיטות בדיקה קונבנציונליות.
2. בדיקת חברים
בהקשר אד-הוק, מבחני חברים משתמשים במינימום שני אנשי צוות – בדרך כלל בודק ומפתח – ומתקיימים בעיקר לאחר שלב בדיקת היחידה . ה’חברים’ עובדים יחד על אותו מודול כדי לאתר שגיאות. מערכי הכישורים המגוונים והניסיון המקיף שלהם הופכים אותם לצוות יעיל יותר, מה שעוזר להקל על רבות מהבעיות המתעוררות עקב חוסר תיעוד.
המפתח עשוי אפילו להציע מספר מהבדיקות עצמם, ולאפשר להם לזהות את הרכיבים שעשויים להזדקק לתשומת לב רבה יותר.
3. בדיקת זוג
בדיקה זוגית דומה בכך שהיא כוללת שני אנשי צוות, אך לרוב מדובר בשני בודקים נפרדים, שאחד מהם מבצע את הבדיקות בפועל ואילו השני רושם הערות.
גם ללא תיעוד רשמי, רישום הערות עשוי לאפשר לצוות לעקוב באופן לא פורמלי אחר בדיקות אד-הוק בודדות. התפקידים של הבוחן והסופר יכולים להחליף בהתאם למבחן או שהזוג עשוי לשמור על התפקידים שהוקצו להם לאורך כל התהליך.
הבוחן שיש לו יותר ניסיון הוא בדרך כלל זה שמבצע את הבדיקות בפועל – למרות שהם תמיד חולקים את העבודה אחד עם השני.
בדיקות אד-הוק ידניות או אוטומטיות?
בדיקות אוטומטיות יכולות לעזור לצוותים לחסוך עוד יותר זמן לאורך שלב הבטחת האיכות; מה שמאפשר לבודקים להתאים יותר בדיקות ללוח הזמנים שלהם. גם ללא מבנה מוגדר, חיוני שהבודקים יפעלו כדי למקסם את הכיסוי ואוטומציה מעודדת בדיקות מעמיקות יותר של תוכנה זו.
בדיקות אד-הוק אוטומטיות הן בדרך כלל מדויקות יותר מבדיקות ידניות בשל יכולתן להימנע מטעויות אנוש במהלך משימות חוץ – זה מועיל במיוחד כאשר מבצעים את אותן בדיקות על איטרציות שונות. הצלחת הליך זה תלויה בדרך כלל בכלי הבדיקה האוטומטית שהצוות בוחר ובפונקציונליות שלו.
עם זאת, לבדיקות אוטומטיות יש מגבלות מסוימות. לדוגמה, החוזק העיקרי של בדיקות אד-הוק הוא היכולת שלה לחקות קלט משתמש ולבצע בדיקות אקראיות כשהבודק מגיע אליהם. בדיקות אלו עלולות לאבד את האקראיות שלהן אם תוכנית הבדיקות של הארגון נאבקת בבדיקות מורכבות.
הזמן שלוקח לבצע אוטומציה של משימות מאוד ספציפיות אלה עשוי גם להגביל את החיסכון האופייני בזמן של תהליך זה. חשוב שצוותים יחקרו ביסודיות את כלי האוטומציה הזמינים כדי למצוא אחד שתואם את הפרויקט של החברה שלהם.
מה אתה צריך כדי להתחיל בדיקות אד-הוק?
להלן התנאים המוקדמים העיקריים של בדיקות אד-הוק:
1. צוות מוסמך
מכיוון שבדיקות אד-הוק הן בדיקות מהירות ואקראיות של פעולתה הפנימית של התוכנה, בדרך כלל עוזר להצטייד בבודקים בעלי ניסיון בתוכנה. הם צריכים גם להיות בעלי ידע מעשי של עקרונות בדיקה מרכזיים – זה מאפשר להם לזהות בקלות את הבדיקות היעילות ביותר.
2. גישה לא מובנית
בודקים חייבים להיות מוכנים לנטוש את האסטרטגיות הרגילות שלהם לבדיקות אד-הוק; הלך הרוח הזה הוא קריטי בדיוק כמו בדיקות האיכות עצמן. שיטה זו יכולה להצליח רק ללא מבנה או תיעוד וחיוני שהבודקים יזכרו זאת בכל שלב.
3. תוכנת אוטומציה
למרות שבדיקות אד-הוק מסתמכות יותר על בדיקת תשומות ותנאים אקראיים, אוטומציה היא עדיין טכניקה יעילה מאוד בכל הקשר.
מסיבה זו, בדיקות אד-הוק עדיין צריכות ליישם כלי בדיקה אוטומטיים במידת האפשר, מכיוון שהאפליקציה הנכונה יכולה לייעל את התהליך באופן משמעותי.
4. צורות אחרות של בדיקה
בדיקות אד-הוק פועלות בצורה הטובה ביותר לצד בדיקות אחרות הנוקטות בגישה רשמית יותר – עוזרות לצוות להבטיח כיסוי משמעותי בכל התוכנה. זה חיוני שהבודקים יערבבו טכניקות שונות, אם כי זה יכול להיות לפני, במהלך או אחרי שהם משלימים בדיקות אד-הוק.
תהליך בדיקות אד-הוק
השלבים הרגילים שבודקים צריכים לבצע כאשר הם מבצעים בדיקות אד-הוק בבדיקות תוכנה הם:
1. הגדרת יעדי מבחן אד-הוק
שלב זה מוגבל בגלל היעדר תיעוד ומבנה, אבל עדיין חשוב שהצוות יהיה עם מיקוד ברור. הבודקים עשויים להתחיל לחלוק רעיונות מעורפלים לגבי הבדיקות הקרובות להפעיל והרכיבים שיש לתעדף.
2. בחירת צוות הבדיקות האד-הוק
כשהצוות עושה סיעור מוחות על מספר בדיקות אד-הוק פוטנציאליות, הם גם מבינים אילו בודקים יהיו הטובים ביותר עבור סוג זה של בדיקות. הם בדרך כלל בוחרים בודקים שמבינים היטב את האפליקציה ועשויים גם להתאים אותם למפתח.
3. ביצוע בדיקות אד-הוק
לאחר שהחליטו אילו בודקים מתאימים לשלב זה, חברי הצוות הללו מתחילים את הבדיקות שלהם בנקודה מוסכמת בבדיקה. המטרה שלהם היא לבצע כמה שיותר בדיקות אד-הוק – שאולי הבודקים לא יגמינו עד לשלב זה.
4. הערכת תוצאות הבדיקה
עם השלמת הבדיקות (או אפילו בין בדיקות בודדות) הבוחנים יעריכו את התוצאות אך מבלי לתעד אותן באופן רשמי במקרה מבחן. אם הם חושפים בעיות כלשהן באפליקציה, הם מתעדים אותן באופן לא פורמלי ודנים בצעדים הבאים של הצוות.
5. דיווח על באגים שהתגלו
לאחר שהם מעריכים את התוצאות, הבודקים חייבים ליידע את המפתחים על השגיאות הקיימות בתוכנה כדי שיהיה להם מספיק זמן לתקן אותן לפני השחרור.
צוות הבדיקות משתמש במידע גם כדי לקבוע כיצד לשפר את תהליכי הבדיקה הפורמליים שלהם.
6. בדיקה חוזרת לפי הצורך
סביר להניח שצוות הבדיקות יחזור על תהליך האד-הוק עבור איטרציות חדשות של האפליקציה כדי לבדוק עד כמה היא מטפלת בעדכונים. מכיוון שהבודקים יתקנו רבים מהפערים שזוהו בעבר במקרי הבדיקה שלהם, בדיקות אד-הוק עתידיות עשויות לדרוש גישה אחרת.
שיטות עבודה מומלצות לבדיקות אד-הוק
ישנן פרקטיקות מסוימות שצוותי הבדיקה צריכים ליישם במהלך בדיקות אד-הוק, כולל:
1. מקד פערי בדיקה פוטנציאליים
בעוד שבדיקות אד-הוק כרוכות בהרבה פחות תכנון מאשר סוגים אחרים, הצוות עדיין שואף לטפל בחסרונות באבטחת האיכות. אם הבודקים האד-הוק חושדים בבעיות ספציפיות עם מקרי הבדיקה של הצוות, עליהם לתעדף זאת בזמן ביצוע הבדיקות שלהם.
2. שקול תוכנת אוטומציה
אסטרטגיות אוטומציה כגון היפר-אוטומציה יכולות להציע יתרונות רבים לחברות שרוצות לערוך בדיקות אד-הוק.
ההצלחה של זה תלויה במספר גורמים מרכזיים, כולל הכלי שהעסק בוחר, כמו גם המורכבות הכללית של בדיקות האד-הוק שלו.
3. רשום הערות מקיפות
היעדר התיעוד בבדיקות אד-הוק נועד בעיקר לייעל את התהליך הזה עוד יותר – הצוות יכול להפיק תועלת מלערוך הערות לא רשמיות תוך כדי המשך. זה נותן לבודקים תיעוד ברור של הבדיקות הללו והתוצאות שלהן, מה שמגדיל את יכולת החזרה הכוללת שלהם.
4. המשיכו לחדד את הבדיקות
בודקים אד-הוק משכללים את הגישה שלהם ללא הרף כדי לקחת בחשבון שינויים באסטרטגיית הבדיקות של הצוות. כאשר מסתכלים על גרסאות חדשות יותר של תוכנת החברה, למשל, הם עשויים להתאים את הבדיקות הללו בתגובה למקרי בדיקה פורמליים חדשים וכוללים יותר.
7 טעויות ומלכודות ביישום
מבחנים אד-הוק
כמו בכל תהליך בדיקה, קיים מגוון רחב של טעויות פוטנציאליות שהצוות צריך לפעול כדי להימנע מהם, כגון:
1. בודקים חסרי ניסיון
כדי לשמור על הקצב הצפוי של בדיקות אד-הוק, על ראש הצוות להקצות בודקים על סמך הידע והמיומנויות שיש להם. בעוד צורות רבות של בדיקות יכולות להתאים לצוות אבטחת איכות ברמת ההתחלה, בדיקות אד-הוק דורשות חברי צוות שמבינים היטב את התוכנה; רצוי עם ניסיון בהפעלת מבחנים אלו.
2. בדיקות לא ממוקדות
בדיקות אד-הוק יכולות לשפר משמעותית את כיסוי הבדיקות הודות לקצב המהיר שלה – הצוות לא צריך למלא תיעוד נרחב לפני ואחרי כל בדיקה.
עם זאת, בודקי האד-הוק עדיין חייבים לשמור על מיקוד חזק; לדוגמה, הם עשויים להחליט לתעדף רכיבים מסוימים עם סיכון גבוה יותר לכישלון.
3. אין תכנון
הימנעות מכל תוכנית שהיא עלולה להגביל את היעילות של בדיקות אד-הוק. למרות האופי הבלתי מובנה של גישה זו, חשוב שלצוות יהיה מושג גס אילו מבחנים להפעיל לפני שהם מתחילים.
הזמן מוגבל במהלך תהליך זה והידיעה כיצד להמשיך יכולה להציע יתרונות רבים.
4. מובנית מדי
בקצה הנגדי של הספקטרום, גישה זו מסתמכת בדרך כלל על חוסר תכנון מכיוון שהדבר עוזר לבודקים לחתור באופן אקטיבי למקרי בדיקה ולמצוא שגיאות נסתרות.
בדיקות אד-הוק ידועות גם כבדיקות אקראיות וכפיית מבנה עליה עשויה למנוע מהבדיקות הללו לאתר באגים.
5. אין שינויים ארוכי טווח
מטרת בדיקות אד-הוק היא לזהות חולשות כלשהן במקרי הבדיקה של הצוות; זה בוחן את האסטרטגיה הכוללת שלהם בדיוק כמו התוכנה עצמה.
עם זאת, המשמעות היא שבדיקות אד-הוק יעילות בדרך כלל רק אם הצוות משתמש במידע זה כדי לחדד את הבדיקות הרשמיות שלו לאורך זמן.
6. מערכי נתונים לא תואמים
כמעט כל צורה של בדיקה דורשת סוג של נתונים מדומים כדי להעריך כיצד האפליקציה מגיבה; כלים מסוימים מאפשרים לבודקים לאכלס תוכנית באופן אוטומטי בנתונים מדומים .
עם זאת, ייתכן שזה לא משקף את האופן שבו משתמש יתקשר עם התוכנה – בדיקות אד-הוק דורשות מערכי נתונים שהתוכנה ככל הנראה תתקל בהם.
7. ממגורות מידע
חיוני שהבודקים והמפתחים יהיו בתקשורת מתמדת זה עם זה, גם אם האחרון אינו חלק מתהליך הבדיקות האד-הוק.
זה עוזר לכולם להבין אילו בדיקות נערכו – מראה את הפעולות הבאות שיש לנקוט ובמקביל מונע מהבודקים לחזור על בדיקות מסוימות ללא צורך.
סוגי תפוקות ממבחנים אד-הוק
בדיקות אד-הוק מייצרות מספר תפוקות נפרדות, כולל:
1. תוצאות הבדיקה
הבדיקות הבודדות מניבות תוצאות שונות ספציפיות למרכיב ולגישה המדויקת המעורבים – זה יכול ללבוש צורות רבות.
בדרך כלל באחריות הבוחן לקבוע אם התוצאות מהוות שגיאה, אם כי חוסר תיעוד מקשה על השוואה בין הציפיות שלו. הצוות מעביר את התוצאות הללו למפתחים אם הם מבחינים בבעיות כלשהן.
2. יומני בדיקה
התוכנה עצמה משתמשת במערכת מסובכת של יומנים פנימיים כדי לפקח על קלט המשתמש ולהדגיש מספר בעיות של קבצים או מסד נתונים שעלולים להופיע.
זה יכול להצביע על שגיאה פנימית, כולל החלק הספציפי של התוכנה שגורם לבעיה. בעזרת המידע הזה, בודקים ומפתחים אד-הוק יכולים לטפל בבעיות שהם מגלים הרבה יותר בקלות.
3. הודעות שגיאה
בדיקות אד-הוק רבות מכוונות באופן ספציפי לשבור את התוכנה ולחשוף את גבולותיה, מה שאומר שהודעות השגיאה של האפליקציה הן אחת התפוקות הנפוצות ביותר מבדיקות אלו.
על ידי גרימת הודעות שגיאה בכוונה, הצוות יכול להציג את מה שמשתמש הקצה הממוצע רואה בכל פעם שהפעולות הבלתי צפויות שהם נוקטים משפיעות לרעה על פעולת התוכנית.
דוגמאות לבדיקות אד-הוק
להלן שלושה תרחישי בדיקה אד-הוק המראים כיצד צוות עשוי ליישם זאת עבור יישומים שונים:
1. יישום אינטרנט למסחר אלקטרוני
אם חברה מעוניינת לבדוק אפליקציית אינטרנט מבוססת מסחר אלקטרוני, היא יכולה להשתמש בבדיקות אד-הוק – במיוחד בדיקות קופים – כדי לראות עד כמה הפלטפורמה מתמודדת עם אינטראקציות בלתי צפויות של משתמשים.
הבודקים עשויים לשאוף לדחוף כל תכונה לגבולותיהם, כגון על ידי הוספת פריטים לסל שלהם בכמויות לא מציאותיות או ניסיון לקנות מוצרים שאזלו מהמלאי. הם אינם מוגבלים על ידי מקרי הבדיקה של הצוות ויש מעט גבולות לבדיקות שהם יכולים לבצע; הבודקים עשויים אפילו לנסות להשלים רכישות באמצעות כתובות URL מיושנות.
2. יישום שולחן עבודה
בודקי אד-הוק יכולים גם ליישם את הטכניקות הללו עבור יישומי שולחן עבודה עם התמקדות אפשרית במכונות שונות ועד כמה כל אחד מהם מתאים לתוכנית.
חברי הצוות עשויים לבצע בדיקות אלה שוב ושוב כדי לראות כיצד שינוי הגדרות החומרה או התוכנה משפיע על הביצועים הכוללים של יישום. לדוגמה, כרטיס גרפי מסוים עשוי להתקשות בעיבוד הממשק.
לחלופין, בודקים אלה יכולים פשוט לתת לתוכנית שלהם קלט בלתי אפשרי ולראות כיצד היא מגיבה, למשל אם היא יכולה להציג בצורה נכונה הודעות שגיאה המסבירות את הבעיה בצורה נאותה למשתמש הקצה.
3. אפליקציה לנייד
אחת הדרכים שבהן בודקים אד-הוק יכולים לבחון אפליקציה לנייד היא לבדוק את פרוטוקולי האבטחה שלה – הם יכולים לנסות לגשת ישירות לכלי הפיתוח של האפליקציה, למשל.
הצוות עשוי לנסות לראות אם הם מסוגלים לבצע פעולות לא מורשות על ידי מציאת פרצות וניצולים נפוצים; הם יכולים לבקש ספציפית מחברי צוות עם ניסיון באבטחת אפליקציות כדי להקל על כך.
זה עשוי לכלול גם בדיקות זוגיות עם המפתחים בשל התובנה שלהם לגבי עיצוב האפליקציה, מתן אפשרות לבוחן לשבור את התוכנה ולהראות בדיוק היכן חסרה האבטחה שלה.
סוגי שגיאות ובאגים שזוהו
באמצעות בדיקות אד-הוק
בדיקות אד-הוק יכולות לחשוף בעיות רבות בתוכנית, כגון:
1. שגיאות פונקציונליות
שימוש בבדיקות אד-הוק כדי לבחון את התכונות הבסיסיות של אפליקציה עשוי לחשוף באגים רציניים המשפיעים על האופן שבו משתמשי קצה עשויים לעסוק בו.
לדוגמה, קוף בדיקת אפשרויות התשלום של אתר מסחר אלקטרוני ימחיש את התנאים המונעים את העסקה.
2. בעיות ביצועים
הבודקים עשויים לעבוד במיוחד כדי ליצור בעיות ביצועים בתוכנית – כגון על ידי מילוי מסד הנתונים בכניסות ספאם שונות.
זה יכול להתבטא כזמן פיגור משמעותי או אפילו חוסר יציבות כללית של התוכנה, מה שיוביל ככל הנראה לקריסה (עלולה להיות כלל מערכת).
3. בעיות שמישות
בדיקות אלו יכולות גם להדגיש תקלות בממשק ובחוויית המשתמש הכללית. ממשק המשתמש של אפליקציה לנייד , למשל, עשוי להופיע בצורה שונה במערכת הפעלה אחרת או ברזולוציית מסך. ממשק גרוע עלול להוביל למשתמשים שמתקשים להפעיל יישום זה.
4. ליקויי אבטחה
האופי האקראי של בדיקות אד-הוק מאפשר לה לכסות מגוון של חששות אבטחה נפוצים ונדירים; בודק עשוי להשתמש בבדיקות אלה כדי למצוא את הדלתות האחוריות הניהוליות של תוכנית.
לחלופין, בדיקתם עשויה להראות שלתוכנה אין הצפנת נתונים.
מדדי בדיקות אד-הוק נפוצים
בדיקות אד-הוק משתמשות במדדים שונים כדי להקל על תוצאותיה, כולל:
1. יעילות איתור פגמים
מדד זה בוחן עד כמה יעיל תהליך הבדיקה באיתור פגמים בכל צורת בדיקה, כולל בדיקות אד-הוק. יעילות זיהוי הליקויים היא אחוז הליקויים שהתגלו חלקי המספר הכולל של הבעיות – מראה עד כמה הבדיקות יעילות.
2. שיעור כיסוי הבדיקה
תפקיד עזר של בדיקות אד-הוק הוא להגדיל את הכיסוי על ידי בדיקת רכיבים באופן שמקרי בדיקה לא מתחשבים בהם. המשמעות היא שהבודקים ישאפו להגדיל באופן קיצוני את כיסוי הבדיקות בכל בדיקה ככל שהם יכולים.
3. משך הבדיקה הכולל
בדיקות אד-הוק מהירות הרבה יותר מתהליכי הבטחת איכות אחרים – וחיוני שהבודקים יפעלו כדי לשמור על יתרון זה. מדדי משך הבדיקה מראים לחברי הצוות כיצד הם יכולים לחסוך זמן ולהרחיב את היתרונות של אסטרטגיות אד-הוק עוד יותר.
4. שיעור קריסות
בדיקות אלו שואפות לעתים קרובות לשבור את התוכנה ולגרום לקריסה או שגיאה חמורה – ולאפשר להן לחרוג מאסטרטגיות בדיקה טיפוסיות ולמצוא בעיות בלתי צפויות. לשם כך, זה יכול לעזור לדעת באיזו תדירות התוכנה קורסת ומה גורם לבעיות אלו.
5 כלי בדיקה אד-הוק הטובים ביותר
ישנם כלי בדיקה רבים בחינם ובתשלום זמינים לבדיקות אד-הוק בבדיקות תוכנה – חמשת הטובים ביותר הם כדלקמן:
1. ZAPTEST Free & Enterprise Edition
ZAPTEST היא תוכנית בדיקות תוכנה מקיפה המספקת רמה חזקה של פונקציונליות בדיקה + RPA הן בגרסאות החינמיות והן בגרסאות הארגוניות שלה.
אוטומציית תוכנה מלאה זו + RPA Suite מאפשרת בדיקה מלאה בפלטפורמות שולחניות ונייד שונות; טכנולוגיית 1SCRIPT של התוכנה גם מאפשרת למשתמשים לבצע את אותן בדיקות שוב ושוב בקלות. נוסף על כך, הכלי ממנף ראייה ממוחשבת מתקדמת , המאפשרת ל-ZAPTEST להריץ בדיקות אד-הוק מנקודת מבט אנושית.
2. BrowserStack
BrowserStack היא פלטפורמת ענן שיכולה להקל על בדיקות על למעלה מ-3,000 מכונות מגוונות, עם תכונה נוספת של אוטומציה של סקריפטים של סלניום. למרות שהוא מספק כיסוי חזק לפרויקטי תוכנה, הוא עובד בצורה הטובה ביותר עם יישומי דפדפן וניידים .
פתרונות הבדיקה של BrowserStack כוללים גם ניסיון חינם עם 100 דקות של בדיקות אוטומטיות – אם כי ייתכן שיש לכך שימוש מוגבל.
למרות שהגישה מבוססת הענן יכולה להיות מועילה, היא גם משפיעה לרעה על זמן התגובה של הפלטפורמה.
3. LambdaTest
LambdaTest משתמש באופן דומה בטכנולוגיה מבוססת ענן ושם דגש חזק על בדיקות דפדפן אשר עשויות להגביל את היעילות שלה עבור יישומים אחרים – אם כי היא עדיין משתלבת היטב עם תוכניות iOS ואנדרואיד . זוהי פלטפורמה מועילה כאשר מדרגיות היא דאגה והיא משתלבת עם שירותי אירוח בדיקות רבים אחרים.
עם זאת, לחלק מהמשתמשים יש תגובות מעורבות כלפי התמחור של האפליקציה על פני האפשרויות השונות הזמינות ללא ניסיון, מה שעלול להגביל את הנגישות עבור ארגונים קטנים יותר.
4. TestRail
TestRail היא בדרך כלל ניתנת להסתגלות הודות לריצה כולה בדפדפן, ולמרות התמקדות חזקה במקרי בדיקה יעילים, היא גם מתגאה בפונקציונליות אד-הוק ישירה. הניתוח שהוא מספק לאחר כל מבחן יכול גם לעזור לצוותים שנמנעים באופן פעיל מיצירת תיעוד עצמאי משלהם, תוך שהם עדיין מאפשרים להם לאמת את תהליך הבדיקה שלהם.
עם זאת, סוויטות גדולות יותר עשויות להיאבק בפורמט המבוסס על הדפדפן שלה, מה שיכול להגביל את החיסכון בזמן של בדיקות אד-הוק בפער משמעותי.
5. זפיר
Zephyr היא פלטפורמת ניהול בדיקות של SmartBear המסייעת לצוותי אבטחת איכות לשפר את נראות הבדיקות שלהם תוך שילוב טוב עם תוכנות אחרות למעקב אחר באגים.
עם זאת, תכונה זו מוגבלת ליישומים מסוימים, כאשר Confluence ו-Jira הם אלו שהכי מרוויחים מ-Zephyr – אולי אלו לא הפתרונות היעילים ביותר עבור כל עסק. ישנן מספר תוכניות להרחבה זמינות תחת המותג Zephyr במחירים שונים.
רשימת בדיקות אד-הוק, טיפים וטריקים
להלן טיפים נוספים שצוותים צריכים לתת עליהם את הדעת בעת ביצוע בדיקות אד-הוק:
1. תעדוף רכיבים רגישים
תכונות או רכיבים מסוימים נמצאים באופן טבעי בסיכון גבוה יותר לשגיאה מאחרים, במיוחד אם הם חשובים לתפקוד הכולל של התוכנית.
כל גישה לבדיקה צריכה לזהות את החלקים של האפליקציה שעשויים להפיק תועלת מתשומת לב יסודית יותר. זה מועיל במיוחד כאשר הזמן הכולל לבדיקה מוגבל.
2. חקור כלי בדיקה שונים
הכלי שארגון מיישם כדי להקל על הבדיקות שלו יכול להשפיע על הכיסוי והאמינות של בדיקות אלו.
עם בדיקות אד-הוק, כדאי להסתכל על כמה שיותר תוכניות כדי למצוא תוכניות שמתאימות להיבט ממוקד המשתמש שלה. תוכנה המשתמשת בטכנולוגיית ראייה ממוחשבת, כמו ZAPTEST, יכולה לגשת למבחנים אד-הוק באמצעות אסטרטגיה דמוית אדם.
3. אמצו הלך רוח אד-הוק
בדיקות אד-הוק מציעות חופש אדיר לאורך שלב הבטחת האיכות, אך הצוות חייב להתחייב לכך כדי לקבל את היתרונות המרכזיים של האסטרטגיה.
לדוגמה, בודקים אד-הוק צריכים להימנע מכל המסמכים הרגילים שלהם מעבר לרישום הערות בסיסי והם צריכים לבדוק את התוכנה מנקודת מבט חדשה לגמרי.
4. אמון בדיקת אינסטינקטים
ניסיון בבדיקות אד-הוק או בדיקות תוכנה כלליות יכול לעזור להדגיש נקודות כשל נפוצות וזה עוזר לבודקים לקבוע כיצד לזהות שגיאות מכל הסוגים.
זה חיוני שהבודקים יבטחו באינסטינקטים שלהם ותמיד ישתמשו בידע הזה לטובתם – הם יכולים להבין אילו בדיקות אד-הוק יהיו מועילות ביותר.
5. תיעוד מלא של באגים שהתגלו
למרות שלבדיקות אד-הוק אין תיעוד רשמי והיא מסתמכת בעיקר על הערות לא פורמליות, עדיין חיוני שהצוות יוכל לזהות ולתקשר את הגורם לשגיאת תוכנה.
עליהם לרשום כל מידע שהבדיקה מספקת שרלוונטי למפתחים, כמו כל גורם אפשרי לבעיות אלו.
6. חשבו תמיד על המשתמש
כל צורת בדיקה מתכוונת להתאים במידה מסוימת לחוויה הכוללת של המשתמש – ובדיקות אד-הוק אינן יוצאות דופן. למרות שלעתים קרובות הוא מסתכל יותר לעומק על פעולתו הפנימית של האפליקציה ואפילו בקוד הפנימי שלה, בודקים אד-הוק צריכים לנסות לשבור את התוכנה הזו בדרכים שמשתמשים יכולים תיאורטית.
7. שיפור מתמיד של התהליך
צוותי בדיקה צריכים לחדד את הגישה שלהם לבדיקות אד-הוק בין איטרציות מרובות של אותה תוכנה ומפרויקט אחד למשנהו.
הם יכולים לאסוף משוב ממפתחים כדי לראות עד כמה הבדיקות האד-הוק שלהם עזרו לשלב הבטחת האיכות ואם הם הצליחו להגדיל משמעותית את כיסוי הבדיקות.
סיכום
בדיקות אד-הוק יכולות לעזור לארגונים מכל הסוגים לאמת את אסטרטגיית בדיקת התוכנה שלהם, אך הדרך שבה הם מיישמים טכניקה זו יכולה להיות גורם משמעותי ביעילותה.
איזון בין סוגי בדיקות שונים הוא המפתח להשגת מירב התועלת מבדיקות אד-הוק – במיוחד מכיוון שצורת בדיקה זו מתכוונת להשלים את האחרות על ידי מילוי פער אסטרטגי.
עם אפליקציה כמו ZAPTEST, זה אפשרי לצוותים לבצע בדיקות אד-הוק עם ביטחון או גמישות רבה יותר, במיוחד אם הם מיישמים אוטומציה. לא משנה הגישה הספציפית של הצוות, המחויבות שלהם לבדיקות אד-הוק עשויה לחולל מהפכה בכל התוכנית או הפרויקט.