1 / 41

סקירת סוגי בדיקות

סקירת סוגי בדיקות. תוכן עניינים:. חזרה כללית. רמות בדיקה. סוגי בדיקה. חזרה כללית:. על אילו 2 מושגים שונים ומרכזיים אנו מדברים כשאנו עוסקים בעולם הבדיקות ???. חזרה כללית:.

Download Presentation

סקירת סוגי בדיקות

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. סקירת סוגי בדיקות

  2. תוכן עניינים: • חזרה כללית. • רמות בדיקה. • סוגי בדיקה.

  3. חזרה כללית: על אילו 2 מושגים שונים ומרכזיים אנו מדברים כשאנו עוסקים בעולם הבדיקות ???

  4. חזרה כללית: בדרך הארוכה ליצירת תוכנה יעילה ומועילה אנו צריכים תוכנית בדיקות מקיפה אשר תוודא כי דרכינו נכונהיעילה ואפקטיבית ובכדי להבין את המשמעות של תוכנית הבדיקות נתרכז בשני תהליכים מרכזיים - V&V: • Validation – האם בונים את המוצר הנכון? • Verification – האם בונים את המוצר נכון? דוגמה לvalidation- ??? דוגמה ל-Verification ???

  5. פרנסה!!! כך זה אופיין זו דרישת הלקוח כך זה עוצב זה בכלל מה שהלקוח צריך !!!! כך זה הותקן על זה חויב הלקוח כך זה פותח

  6. סקירה כללית בדיקות סטטיות • בדיקות מערכת מבלי להפעילה • כוללות בדיקה של מסמכי תיכון המערכת • הגדרת דרישות • אפיון • עיצוב ועוד • כוללת את בדיקת קוד המקור של המערכת

  7. סקירה כללית בדיקות דינמיות • בדיקת המערכת ע"י הרצתה בסביבה המדמה את הסביבה התפעולית של המערכת, תוך שימוש בתסריטי בדיקה מטרת תסריטי הבדיקה לוודא כי המערכת עונה על הדרישות שהוגדרו בשלבי התכנון • הגדרת דרישות • אפיון • עיצוב בדיקות דינמיות מבוצעות על בסיס מסמך עיצוב בדיקות - STD

  8. רמות בדיקה ?

  9. רמות בדיקה פירוט רמות הבדיקה: • בדיקות יחידה (Unit Test) • בדיקות אינטגרציה (Integration) • בדיקות מערכת (System) => בדיקות מפעל (FAT / FTP) • בדיקות קבלה (Acceptance)

  10. רמות בדיקה - בדיקות יחידה (Unit Test) מטרה איתור מירב התקלות בפעולת התוכנה, במטרה לוודא שהרכיב / המודול הנבדק מתפקד באופן תקין ומבצע את עבודתו. בדיקות יחידה מבוצעות על רכיבי קוד לפני אינטגרציה שלהם לתוך המערכת. תחום בדיקות יחידה מבוצעות על חלקים נפרדים של הקוד כמו: • פונקציות • מודול • טופס • מחלקות (Classes) • רכיבי קוד שתוכניתן מחליט לבדוק בנפרד

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

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

  13. רמות בדיקה - בדיקות מערכת (System) שיטה • תכנון מקרי בדיקה מבוסס על דרישות האפיון והעיצוב של המערכת הנבדקת. • בדיקה ידנית לפי תכנון תסריטים. • בדיקה ממוכנת באמצעות כלים להרצת בדיקות אוטומטיות, בהתבסס על תכנון ממוכן או ידני. אחריות • תכנון, עיצוב, ביצוע ודיווח תוצאות באחריות צוות הבדיקות. • בדיקות מערכת מבוצעות ע"י צוות הבדיקות בסביבת הבדיקות או בסביבת אינטגרציה. כלים • TestDirector, QuickTest, WinRunner, LoadRunner וכד'.

  14. רמות בדיקה - בדיקות קבלה (Acceptance) מטרה מטרת בדיקות קבלה להבטיח שמערכת הנבדקת עונה על ציפיות הלקוח. תחום בדיקות קבלה לא חייבות לכסות את כל הפונקציונליות של המערכת הנבדקת. בדיקות קבלה מכסות את התהליכים העסקיים החשובים ביותר למשתמש כפי שמוגדר על ידו. • FTP / FAT - בדיקות מבוצעות בסביבת הייצור ע"י צוות הבדיקות, ידועות גם בשם Alpha Tests. • ATP / UAT - בדיקות מבוצעות בסביבת הלקוח ע"י משתמשי המערכת, ידועות גם בשם Beta Tests .

  15. סוגי בדיקות סוגי בדיקות ???

  16. סוגי בדיקות • פונקציונאליות. • לא פונקציונאליות (NFT): ביצועי מערכת. שימושיות. כשל והתאוששות. מה עוד?

  17. מצא את ההבדל... בדיקות פונקציונאליות ובדיקות לא פונקציונאליות? • בדיקות פונקציונאליות - אם זה עובד • בדיקות לא פונקציונאליות (NFT) - איך זה עובד

  18. סוגי בדיקות - בדיקות פונקציונליות בדיקות פונקציונאליות בדיקת המערכת במטרה לוודא כי עומדת בדרישות התפקודיות שהוגדרו במסמכי האפיון והעיצוב. • בדיקות תהליכים • בדיקות ממשק משתמש GUI, MMI • בדיקות חיוביות • בדיקות שליליות • בדיקות גבולות ותחומים • בדיקות התקנה וקונפיגורציה הבדיקות הפונקציונאליות מהוות את המרכיב העיקרי בבדיקות מערכת תוכנה.

  19. פונקציונאליות- ממשק משתמש

  20. ממשק משתמש • ממשק משתמש טקסטואלי • ממשק משתמש גרפי-GUI • הממשק למשתמש היינו ממשק גרפי המכיל אלמנטים נוספים מעבר לממשק הטקסטואלי. • בבדיקות GUI מומלץ לעקוב אחר הנחיות של Microsoft GUI Standard • בדיקות הממשק יתבססו על האפיון ויכללו: • בדיקת גופנים (Font) • עריכת שדות Combo • מאפיינים של שדות Focus, Enable/Disable • באפליקציות עם בדיקות GUI נרחבות בצוע הבדיקות בכלי אוטומטי מווה יתרון רב. • ממשק זה כולל את האלמנטים אשר משתמש נחשף אליהם לדוגמא: מסכי אפליקציה. • בדיקות הממשק יתבססו על האפיון ויכללו: • מסכי מערכת • בדיקת שדות המסך • מעבר בין שדות • הזנה ועדכון של קלט חיובי ושלילי • ערכי קצה • סינון ומיון • לוגיקה פנימית • ועוד

  21. ממשק משתמש • בדיקת תפריטים: • תכולת תפריטי משנה, לדוגמא: • תפריט "מוצרים" מכיל את תפריטי המשנה "חיפוש", "הוספה", "עדכון מחיר" ו"מחיקה" • הרשאות • משתמש מפרופיל מסוים מורשה להפעיל תפריטים מסוימים • פונקציונליות • בחירת אופציה מסוימת או מוד עבודה מסוים מאפשרים / חוסמים תפריטים • מומלץ לביצוע באמצעות בדיקות אוטומטיות • בדיקת קשרים בין השדות: • קשרים לוגיים, לדוגמא: • הזנת תאריך תחילת מנוי 01/01/2005 בשדה "תחילת מנוי", מעדכנת אוטומטית תאריך "סיום מנוי" בשנה פחות יום (31/12/2005). • הזנת שם מדינה תגביל את ערך השדה שם העיר. • ערך "עד תאריך" גדול מערכך "מתאריך". • הסתעפויות • בסימון שדה "מנוי קיים" יתבצע דילוג על חלון הרשמה. • לחיצה על כפתור "ביטול" מבצעת יציאה ללא שמירה.

  22. ממשק משתמש בדיקת שדה COMBO: בדיקת רשימת הערכים, טווח שדות רלוונטי לפונקציה. אפשרות כתיבה ישירה לשדה. אפשרות הוספת ערך לרשימה. בדיקת שדה Radio Button ברירת מחדל סימון קבוצת השדות הנכונה הלוגיקה הנגזרת מהבחירה בדיקת שדה Check Box ברירת מחדל הלוגיקה הנגזרת מהבחירה השיטה המינימלית לבדיקה:לא לסמן אף שדה ולבדוק תוצאה, לסמן את כל השדות ולבדוק תוצאה

  23. ממשק משתמש • בדיקת מסכים: • השוואה בין עיצוב המסך כפי שהוא מופיע במסמכי האפיון לבין המסך בפועל: • מיקום שדות ופקדים • שדות חובה • צבעים ופונטים • בדיקת מיקום, וטקסט של כותרות ושדות • בדיקת תפריטים (השקף הבא..) • ניתן להשתמש בתסריט גנרי המפנה למסמך העיצוב. • בדיקת תפריטים: • תכולת תפריטי משנה, לדוגמא: • תפריט "מוצרים" מכיל את תפריטי המשנה "חיפוש", "הוספה", "עדכון מחיר" ו"מחיקה" • הרשאות • משתמש מפרופיל מסוים מורשה להפעיל תפריטים מסוימים • פונקציונליות • בחירת אופציה מסוימת או מוד עבודה מסוים מאפשרים / חוסמים תפריטים • מומלץ לביצוע באמצעות בדיקות אוטומטיות

  24. ממשק משתמש בדיקת שדה תאריך- חוקיות: יום לא חוקי, שדה חובה כן/לא וכד'. פורמט: יום וחודש DD/MM. בדיקת שדה מספר: מכיל רק ספרות, +/- או נקודה עשרונית ערכי קלט מותרים: ספרות 0-9, כמות ספרות, ספרות אחרי נקודה, טווח מספרים מותרים, ערכים חיוביים ושליליים. ערכי קלט אסורים: אותיות וסימנים NULL, 1[space], 2@, 1#, B0, Aa • בדיקת שדה טקסט: • מכיל ספרות, אותיות וסימנים • הזנת שפות שונות • אפשרות אותיות גדולות וקטנות • סימני פיסוק וסימונים גרפיים • כמות תווים מותרים

  25. פונקציונאליות- חיוביות • בדיקות של תסריטים הגיוניים. • שימוש באפליקציה עם נתונים חוקיים ופעולות צפויות של המשתמש • בדיקות אלה בדרך כלל מיישמים את מסלולים הבסיסיים של Use Case המתאימים. • בדיקות חיוביות אמורות להיות מתוכננות במטרה לדמות שימוש נכון במערכת ע"י המשתמשים.

  26. פונקציונאליות-שליליות • בדיקות הבודקות את התנהגות המערכת כאשר נרשמים נתונים לא חוקיים או פעולות לא צפויות נעשות ע"י המשתמש. • בדיקות אלה בדרך כלל מיישמים את מסלולים תחליפים של Use Case המתאימים. • בדיקות שליליות אמורות להיות מתוכננות במטרה להפיל את המערכת. • תוצאות הצפויות של בדיקות שליליות מבוססות על תגובות של מערכת לחריגות מנקודת מבט של המשתמש, לדוגמא: הודעות שגיאה, שמירת נתונים וכד'.

  27. התקנה וקונפיגורציה • בדיקות מתמקדות בהתנהגות של תהליך ההתקנה הכולל אפשרויות התקנה שונות. הן מכסות גם את הקונפיגורציות לאחר ההתקנה. • הבדיקות הנ"ל מאוד חשובות למערכות שדורשות התקנה בעמדות קצה. • בתכנון הבדיקות יש לשים דגש על הנושאים הבאים אם קיימים: • נתיב התקנה (לנסות לבחור כמה אפשריות ולא רק ברירת מחדל) • רכיבים אופציונלים (לבחור את כולם/אף אחד או חלק מהרכיבים ולוודא האם הותקנו באמת) • מקום נדרש בדיסק (להתקין כאשר אין מקום) • סוגי התקנה (CD, רשת, Download) • הסרה (לבדוק האם אפשר להסיר)

  28. סוגי בדיקות • פונקציונאליות. • לא פונקציונאליות ביצועי מערכת. שימושיות. כשל והתאוששות.

  29. סוגי בדיקות - בדיקות ביצועים בדיקות ביצועים בדיקת המערכת מתוך מטרה לוודא כי המערכת מתפקדת כנדרש במצבי עומס שכיחים וקיצוניים במונחים של זמני תגובה וצריכת המשאבים. • בדיקת עומסים (Load test) • בדיקת לחץ (Stress) • בדיקת נפחים (Volume test) • אמינות (Reliability testing) פרמטרים בסיסיים של ביצועים: • זמני תגובה (Response time) • זמני מעבד (Processor time) • שימוש בזיכרון (Memory usage) • נו"ב – ניטור ובקרה.

  30. סוגי בדיקות - בדיקות ביצועים • בדיקות ביצועים מודדות: • זמני ביצועים • כמות שגיאות • ניטור משאבי מערכת • בדיקות ביצועים מתבצעות תחת התנאים הבאים: • עם וללא עומס משתמשים • עם וללא עומס נתונים

  31. סוגי בדיקות - בדיקות ביצועים בדיקת עומסים יכולת לטפל במספר פעולות בו זמנית. דוגמא: טיפול ב- 750 פעולות של הוספת רשומה חדשה בו זמנית כאשר זמן תגובה לא עולה על 25 שניות. בדיקת Stress • יכולת לטפל במספר פעולות גדול מהצפוי בו זמנית. • בדיקה השואפת למצוא את גבולות הפוטנציאלים של המערכת ואת הנקודות בהן ביצועים יורדים באופן משמעותי. דוגמא: מערכת מתוכננת לתמוך ב- 750 פעולות של הוספת רשומה חדשה בו זמנית. לאחר בדיקה מערכת נופלת ב 957 פעולות. הדבר אמור להשפיע על החלטה באיזה פריסה ניתן להשתמש במערכת.

  32. סוגי בדיקות - בדיקות ביצועים בדיקת נפחים יכולת מערכת לשמור על רמת הביצועים בתוך גבולות המוגדרים כאשר כמות הנתונים הצפויים בבסיס נתונים מגיע לכמות מקסימלית. דוגמא: בסיס נתונים צפוי לקבל 50,000 רשומות חדשות בשנה. במקרה זה הוא יכלול 150,000 רשומות בעוד שלוש שנים. בדיקת אמינות יכולת מערכת לשמור על רמת הביצועים בתוך גבולות המוגדרים ללא התדרדרות לאורך פעולות ממושכות. דוגמא: טיפול ב- 250 פעולות במשך 24 שעות ללא צורך בטעינת או איפוס השרת מחדש, כאשר זמן תגובה לא חורג מ- 25 שניות.

  33. סוגי בדיקות • פונקציונאליות. • לא פונקציונאליותביצועי מערכת. שימושיות. כשל והתאוששות.

  34. סוגי בדיקות - בדיקות שימושיות בדיקות שימושיות (Usability) בדיקת מידת יעילות, ידידותיות ונוחות תפעול המערכת • הפעלת המערכת • ניווט במערכת • לימוד המערכת • הכוונת המשתמש להימנעות משגיאות.

  35. סוגי בדיקות - בדיקות שימושיות מתי נבצע בדיקות Usability • דיוק בהזנת נתונים ועלות של טעויות אם יש חשיבות רבה בדיוק הזנת נתונים ועלות גבוהה של טעויות. • השכלה של משתמשים במחשוב ככל שניסיון במחשבים אצל המשתמשים קטן החשיבות בבדיקות Usability גדולה יותר. • דמיון למערכת קודמת שנוי תפיסה בהפעלת מערכת (מעבר ל Web מאפליקציה רגילה עם שינוי בממשק משתמש(

  36. סוגי בדיקות • פונקציונאליות. • לא פונקציונאליותביצועי מערכת. שימושיות. כשל והתאוששות.

  37. סוגי בדיקות - בדיקות שרידות והתאוששות בדיקות שרידות והתאוששות בדיקות האלה מתרכזות בהתנהגות המערכת תחת תנאים של כישלון ויכולתה להתאושש מכישלון הזה. שרידות (Survival) • יכולת המערכת לעמוד בתנאי הפעלה חריגים ולהמשיך ולבצע את המשימות ללא ירידה בביצועי המערכת. התאוששות (Recovery) • יכולת המערכת להתאושש לאחר אירוע אשר השבית את המערכת באופן בלתי מתוכנן ללא איבוד מידע ויכולות המערכת.

  38. סוגי בדיקות - בדיקות שרידות והתאוששות דוגמאות לתנאי כישלון: • הפסקת חשמל • בסיס נתונים מנותק • קבצים מחוקים דוגמאות להתאוששות מכישלון: • גיבוי נתונים לפני השבתה • שיחזור נתונים מגיבוי זמני או קבוע • מיתוג למשאבים חלופיים כמו שרת גיבוי

  39. סוגי בדיקות - בדיקות שרידות והתאוששות שיטות • בדיקות התאוששות יבוצעו כחלק מבדיקות המערכת - System tests. • להלן מדגם שיטות לבדיקת התאוששות: • ניתוק קווי תקשורת • ניתוק מתח חשמל לשרתים שונים • ניתוק מערכות משיקות • ניתוק המערכת הראשית • נפילת ממשקים • נפילת חומרה או מערכת הפעלה • "שתילת" פיסת קוד שתגרום לנפילה מבוקרת של המערכת • בנקודת זמן ידוע. • לאחר עיבוד מספר ידוע של רשומות. נפילה מבוקרת מאפשרת קביעה מדויקת של מצב המערכת בעת הנפילה וע"י כך מאפשרת בדיקה מדויקת של מצב המערכת לאחר התאוששות.

  40. סוגי בדיקות סוגים נוספים: • אבטחת מידע וחדירות - הזדהות והרשאות - דרישות לתהליכי זיהוי ואימות של ישויות הנדרשות להזדהות משתמשים בגישה למערכת, וכמו כן דרישה לחלוקת הרשאות גישה בתוך המערכת. • תאימות - בדיקות תאימות מתמקדות ביכולת המערכת הנבדקת לתפקד בקונפיגורציות תשתית שונות לפי המוגדר בדרישות הלקוח במטרה לוודא שאין פגיעה בפונקציונליות. בדיקות אלו מבוצעות על בסיס הרצת התרחישים על סביבות תמיכה שונות. בדיקות אלה נוגעות לשני סוגים של מערכות: • מוצרי מדף המותקנים על סוגי חומרה שונים, מורצים תחת מערכות הפעלה שונות. • אתרי WEBשניגשים עליהם מדפדפנים שונים/גרסאות של דפדפנים, עם מערכות הפעלה שונות/גרסאות של מערכות הפעלה ומסכים עם רזולוציות שונות.

  41. שאלות?

More Related