PracticU

סוגי בדיקות

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

סוגי בדיקות
ההרצאה מציגה את עץ סוגי הבדיקות. הבסיס הוא החלוקה לבדיקות סטטיות ודינמיות, ובתוך הדינמיות לבדיקות פונקציונליות ומבניות. על כל סוג יש כמה שיטות וטכניקות.
סטטי מול דינמי
1. בדיקה סטטית: בודקים את הקוד או המסמכים בלי להריץ את התוכנה. הדוגמה המרכזית היא code review, שבו עוברים על הקוד שורה אחרי שורה. בודקים גם מסמכים, כמו מסמך האפיון, ה-STP, ה-STD ומסמך דרישות הלקוח.
2. בדיקה דינמית: בודקים את התנהגות התוכנה בזמן שהיא רצה. רואים את התוצאה בפועל, והקוד מעניין פחות מהתנהגות התוכנה.
פונקציונלי מול מבני
3. בדיקה פונקציונלית (קופסה שחורה): בודקים שהתוכנה עושה את מה שהיא אמורה לעשות. לא מעניין מה קורה בפנים, אלא הקלט והפלט.
4. בדיקה מבנית (קופסה לבנה): בודקים את הלוגיקה של שורות הקוד. בדרך כלל זו עבודה של המתכנת, שכותב קוד שבודק את הקוד שלו.
קופסה לבנה
5. Statement Testing: בדיקה של משפטים, כך שכל שורה תרוץ לפחות פעם אחת.
6. Loop Testing: בדיקה של לולאות, כולל לולאות מקוננות.
7. Path Testing: בדיקה של מסלולים בעץ ההחלטות.
8. Branch Testing: בדיקה של ענפים בתנאים.
9. Unit Test: בדיקת יחידות קטנות כמו שורה, לולאה, פונקציה או מחלקה. זה עולם שלם שנלמד בקורס נפרד.
קופסה שחורה: סוגי בדיקות
10. אינטגרציה וממשקים: בודקים שמודולים שכבר עברו בדיקת יחידה עובדים יחד כשהם מחוברים. המידע על הממשקים נמצא במסמך התכנון.
11. בדיקת מערכת: בודקים את המערכת כולה מול מסמך הספציפיקציות, כיישות אחת.
12. בדיקות לא פונקציונליות: ביצועים, נפחי מידע, עומס (stress), תיעוד, ויציבות לאחר קריסה או הפסקת חשמל.
13. ATP: בדיקות הקבלה שהלקוח מבצע מול הדרישות העסקיות שלו.
14. בדיקות קצה (End-to-End): בודקים תרחיש מלא שמשתמש אמיתי מבצע במערכת.
15. Sanity ו-Smoke: בדיקה ראשונית שמוודאת שגרסה יציבה מספיק לבדיקה רחבה.
16. Regression: בדיקה חוזרת של אזורים שתוקנו, כדי לוודא שהתיקון לא יצר באגים חדשים.
17. בדיקות נוספות: שימושיות (usability), התקנה והסרה, התאוששות (recovery), תאימות לסביבות, אבטחה, בדיקות Exploratory ו-Ad-hoc, השוואה למתחרים, ובדיקות Alpha ו-Beta לפני השחרור.
המטרה היא להבין אילו שיטות מתאימות לאיזה סוג בדיקה, ומתי נכון להשתמש בכל אחת.
השיעור הבא בקורס: באגים - Bugs

פרקי ההרצאה: סוגי בדיקות

  1. 00:00

    מטרות השיעור: משפחות סוגי הבדיקות

  2. 01:26

    עץ הבדיקות: סטטיות ודינמיות

  3. 02:05

    בדיקה סטטית של הקוד והמסמכים

  4. 02:58

    בדיקה דינמית: התנהגות התוכנה בזמן ריצה

  5. 03:31

    בדיקות פונקציונליות: קופסה שחורה

  6. 04:09

    בדיקות מבניות: קופסה לבנה

  7. 06:02

    יוניט טסט: בדיקת יחידה שכותב המתכנת

  8. 12:28

    בדיקות אינטגרציה: חיבור מודולים שנבדקו

תמלול ההרצאה: סוגי בדיקות

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

  1. 00:05

    טסט טייפס סוגי בדיקות בהרצאה הזאתי אנחנו נדבר קצת על החלוקה למשפחות של סוגי בדיקות lesson objectives מטרות השיעור טסטינג 3 נדבר על עץ הבדיקות static and dynamic testing ההבדלים בין בדיקות סטטיות לדינמיות שזה משפחה זה שתי משפחות של סוגי בדיקות functional and structural על טסטינג, נדבר על בדיקות מבניות ועל בדיקות פונקציונליות.

  2. 00:44

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

  3. 01:04

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

  4. 01:26

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

  5. 01:52

    מבניות. Static and Dynamic Testing מה זה בדיקות סטטיות ודינמיות? Static Testing Investigate source code without execute the code Investigate project documents בדיקות סטטיות זה למעשה לבדוק את הקוד עצמו בלי להריץ את הקוד זאת אומרת לעשות מיין קוד ריוויו שבו עוברים שורה

  6. 02:17

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

  7. 02:27

    רואים אותו על דפים או על מסך בלי להריץ אותו ובלי לדבק אותו. Investigate Project Documents עושים בדיקה של מסמכי הבדיקות. בודקים את מסמך האפיון, בודקים את מסמך ה-STP, את מסמך ה-STD, את מסמך דרישות הלקוח.

  8. 02:46

    זאת אומרת, זו בדיקה שאין לה, היא לא מערבת את התוכנה עצמה. Dynamic Testing, בדיקות דינמיות Investigate the Software Behavior while it is Executing.

  9. 02:57

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

  10. 03:08

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

  11. 03:18

    Functional and Structural Testing בדיקות פונקציונליות ובדיקות מבניות Functional Testing ובדיקות פונקציונליות Testing the functionality of the program known as black box testing אז בדיקות פונקציונליות ולמעשה לבדוק שהפונקציות שהתוכנה עושה את מה שהיא אמורה לעשות קוראים לזה גם בדיקות קופסה שחורה כי בדרך כלל לא מעניין אותנו הקוד שבפנים מעניין אותנו ההתנהגות מעניין אותנו שאם היא צריכה לעשות א' היא באמת עושה

  12. 03:49

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

  13. 04:03

    white-structural testing ובדיקות מבניות testing the logic of the program known as white-box testing אז פה אנחנו בודקים את הלוגיקה של השורות קוד אנחנו למעשה בודקים שהשורות קוד הן באמת נכונות שאנחנו כותבים שורות קוד שיבדקו שורות קוד של התוכנה מה זאת אומרת נניח ויש לי לולאת for בתוכנה עצמה אני אכתוב איזושהי

  14. 04:32

    פונקציית בדיקה שתריץ את הלולאת for הזאת ותראה שהיא באמת עובדת נכון והבדיקות האלה ידועות בשם של בדיקות קופסה לבנה whitebox testing וההבדל בין זה לבין static testing שפה אנחנו חוקרים את הקוד רק מלהסתכל עליו אנחנו לא כותבים קוד שיריץ את הקוד המקור לעומת זאת בטרקטורל טסטינג אנחנו כותבים קוד שיבדוק את הקוד של התוכנה whitebox testing מה זה בדיקות קופסה לבנה

  15. 05:08

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

  16. 05:41

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

  17. 05:53

    Usually done by the programmer and not the tester. בדרך כלל מי שעושה בדיקות קופסה לבנה זה מתכנתים. כל מתכנת בדרך כלל בודק את הקוד שלו וכותב תסריטי, כותב קוד שיבדוק את הקוד שהוא כתב.

  18. 06:07

    Each programmer do his own whitebox testing unitest for his written code. כל מתכנת בודק את הקוד שלו וזה למעשה השם ויידבוקס טסטינג זה השם האחר ליוניטס, שיוניטס זה בדיקות יחידה שמבוצעות על ידי המתכנת.

  19. 06:25

    Based on knowledge of the internal logic of the system. כל היוניטס, כל הבדיקות קופסה לבנה מבוססות על זה שהמתכנת יודע מה הוא כתב, איזה פונקציות הוא כתב, איך הן מתקשרות ביניהן, איזה פרמטרים הם צריכים לקבל.

  20. 06:37

    יש פונקציות שלפעמים כותבים בתוכנה שהן לא קשורות ישירות לדרישת המערכת, הן ממשות חלק מדרישה, אבל הן לא קשורות לדרישה פיזית. 4 Types of White Box Technique יש 4 טכניקות לבדיקות של קופסה לבנה Statement Testing – בדיקה של משפטים Loop Testing – בדיקה של לולאות ולולאות מקוננות Path Testing – בדיקות של מסלולים

  21. 07:10

    עץ מסלולים ו-Branch Testing – בדיקות של ענפים Unit Test – Testing Individual Atomic Units to ensure that they ולעבוד כמו שצריך לעבוד. Unitest, או קופסת בדיקה לבנה, זה למעשה להבטיח שכל יחידה קטנה, קרי שורה, לולאה, פונקציה,

  22. 07:33

    קלאס, עובדים כמו שהם צריכים לעבוד. The Whitebox Unitesting is being covered in another course, Whitebox Testing Course.

  23. 07:47

    יש קורס אחר שמתעסק בבדיקות של Whitebox Unitesting. זה קורס בפני עצמו, זה עולם בפני עצמו. הרבה מאוד מתכנתים לא כל כך יודעים לעשות unit testing שגם פה מגיע הערך המוסף של אנשי QA טובים שאם הם יודעים קוד ויודעים לעשות unit testing הם יכולים ללמד את המתכנתים ולהרצות להם וללמד אותם ולהסביר

  24. 08:12

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

  25. 08:31

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

  26. 08:44

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

  27. 09:01

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

  28. 09:29

    השורה הבודדה ומה שמעניין אותנו זה שאנחנו מכניסים איזשהו input איזשהו קלט אנחנו מצפים לראות אאוטפוט מסוים ואז אנחנו בודקים שבאמת האאוטפוט שקיבלנו זה האאוטפוט הרצוי black box testing we don't know the process inside the code the box אוקיי אנחנו לא יודעים מה התהליכים שקורים בפנים אנחנו לא יודעים איזה פונקציה קורית לאיזה פונקציה זה גם לא כל כך מעניין אותנו וזאת הקופסה השחורה למעשה

  29. 09:59

    אנחנו כן יודעים מה קורה מחוץ לקופסה זאת אומרת מה היא צריכה לקבל מה היא צריכה לתת we don't care what has happened inside the code and now it was reading by the programmer אז שוב לא מעניין אותנו מה המתכנת כתב בפנים, לא אכפת לנו עד כמה זה מסובך, לא אכפת לנו אם יש שם 100 פונקציות או 10 פונקציות,

  30. 10:27

    לא אכפת לנו אם יש שם פונקציה שרצה על עץ בינארי או לא רצה על עץ בינארי, אנחנו לא בודקים את זה. כל הדברים האלה נבדקים ב-whitebox testing ובבדיקות סטטיות.

  31. 10:42

    We want to test the system functionality as users. אותנו מעניין בבלקבוקס טפטינג לבוא ולהסתכל על התוכנה ולדעת אוקיי זה מה שהיוזר רצה אלה הדרישות זה מה שהתוכנה צריכה לעשות האם היא עושה את זה או לא עושה את זה.

  32. 10:57

    אנחנו מסתכלים מהעיניים של המשתמש אבל של המשתמש החכם שגם יודע להסיק מסקנות ולהגיד מה עוד צריך לעשות או איזה דברים צריך לשפר או עד כמה זה קרוב לדרישות שהיוזר רצה. test cases based on requirements and functionality using the following documents: requirements documents, specification documents, design documents.

  33. 11:20

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

  34. 11:39

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

  35. 11:57

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

  36. 12:19

    Black Box Testing Types. אוקיי סוגים של בדיקות קופסה שחורה אינטגריישן אינטרפייס טסטינג בדיקות אינטגרציה או אינטרפייס We need to check if the linked components work with each other מה זה בדיקות אינטגרציה בדיקת אינטגרציה זה לבוא ולהגיד אוקיי המתכנתים

  37. 12:39

    קבוצה א' של המתכנתים בנתה את מודול A קבוצה ב' בנתה את מודול B עכשיו צריך לחבר את שני המודולים ביחד ולראות שהם יודעים לדבר אחד עם השני שהם עובדים טוב כשהם מחוברים ביחד אז זה בדיקות אינטגרציה, זה הלב של בדיקות האינטגרציה.

  38. 12:57

    Two components that have passed all their tests, when connected to each other, produce one new component, full of folds.

  39. 13:04

    אוקיי, אז יש לנו שני קומפוננטות, כמובן שכל קבוצת מתכנתים עשתה unit test על כל קומפוננטה, ואולי אפילו הביאו לנו, לאנשי הבדיקות, לבדוק כל קומפוננטה בפני עצמה, והכל עובד יופי.

  40. 13:17

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

  41. 13:28

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

  42. 13:47

    Interface Testing is focused on how the modules communicate with each other as specified in the System Design Document. אוקיי, אז כל הרעיון של אינטגרשן טסטינג או אינטרפס טסטינג זה לבוא ולהגיד איך המודולים, בוא נבדוק את התקשורת בין המודולים.

  43. 14:04

    תראה שמודול א' באמת מעביר למודול ב' את המידע. בוא נראה שחיברנו שני מודולים שלא מדברים ביניהם ובאמת הם עובדים ולא פתאום מישהו יצר איזושהי תקשורת שגורמת לבאג.

  44. 14:17

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

  45. 14:32

    The system design defines relationships between components and this involves stating what a component can expect from another component in terms of services, how the services will be asked for, how they will be given, how to handle non-standard conditions, example errors.

  46. 14:51

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

לקורס המלא: קורס בדיקות ידניות אונליין

ההרצאה הקודמת: The W Model

ההרצאה הבאה: באגים - Bugs

הרצאות קשורות מקורסים אחרים

  • סוגי בדיקות - QA - טסטים שחייבים להכיר
  • סוגי משתנים
  • סוגי קבוצות
  • בדיקות קונפיגורציה

קורסים נוספים במסלול

  • קורס בדיקות ידניות - QA
  • קורס הכנה למבחן ההסמכה ISTQB