PracticU

סיכום החומר בקורס סלניום מתקדם - חלק 3

בלי כתוביותעם כתוביות
PracticU › קורס סלניום מתקדם - CI/CD - Continues Integration › סיכום החומר בקורס סלניום מתקדם - חלק 3
מילון מושגים:
בדיקות אוטומטיות - הרצת בדיקות תוכנה באמצעות סקריפטים וכלים, במקום בדיקה ידנית, כדי לחסוך זמן ולהגדיל כיסוי.
אקסל - תוכנת גיליונות אלקטרוניים של מיקרוסופט לארגון, חישוב וניתוח נתונים בטבלאות ובנוסחאות.
מתודה - פונקציה המוגדרת בתוך מחלקה ומתארת פעולה שאובייקטים מאותה מחלקה יכולים לבצע.
טופס - אזור בממשק שבו המשתמש מזין נתונים בשדות ושולח אותם, למשל טופס הרשמה או התחברות.
לוג - רישום מתועד של אירועים ופעולות שמתרחשים במערכת או בתוכנה, המשמש למעקב ולאיתור תקלות.
דוח - מסמך או תצוגה שמסכמים נתונים בצורה מאורגנת לצורך הבנה וקבלת החלטות.
חריגה - מצב שגיאה שמתרחש בזמן ריצת התוכנית ומפסיק את המהלך הרגיל, אלא אם הקוד תופס ומטפל בו.
מערך - מבנה נתונים שמאחסן אוסף ערכים מאותו סוג ברצף, שאפשר לגשת אליהם לפי מספר מיקום (אינדקס).

סיכום החומר בקורס סלניום מתקדם - חלק 3
בשיעור סוקרים את מבנה הטסט עצמו בפרויקט האוטומציה: הנוטציות שמגדירות אותו, מקור הנתונים שלו, והדרך שבה הוא מדווח על הצלחה או כישלון. זהו החלק האחרון בסיכום הקורס.
מבנה הטסט
1. הנוטציה Test: מגדירה את העדיפות של הטסט, והאם הוא פעיל (enabled) או לא.
2. Data Provider: קובע מאיזה מקור מגיעים הפרמטרים של הטסט. בדוגמה מדובר בקובץ Excel שנמצא בתיקיית ה-resources של הפרויקט.
3. גוף הטסט: מפעיל את המתודות של דף ה-Page Object, למשל ניווט או מילוי טופס. כל מתודה מחזירה true אם הצליחה ו-false אם נכשלה.
טיפול בכישלון
- אם מתודה מחזירה false, הטסט מדווח על כישלון, מוסיף לוג, שולח את הסטטוס לדוח, ומצרף צילום מסך.
- אם נזרק Exception, הקוד נכנס לבלוק catch. הוא מדפיס את ה-stack trace, מצלם מסך, ומסמן את הטסט ככישלון.
- המרצה מציין שבשני המקרים החשוב הוא שהכישלון ייראה בדוח ויתועד בלוג, כדי שאפשר יהיה לבדוק את הסיבה.
קריאת נתונים מ-Excel
- המתודה שמחזירה את הנתונים קוראת מתוך הקובץ את השורות, החל משורה מסוימת עד שורה מסוימת. הטווח ניתן לשינוי.
- הנתונים מוחזרים כמערך דו-מימדי, שבו כל שורה היא קבוצה של פרמטרים לטסט אחד.
- כך אותו טסט רץ פעמים רבות עם נתונים שונים, בלי לשכפל את הקוד.
הסיכום: הטסט משלב נוטציות של TestNG, Data Provider שקורא מ-Excel, מתודות של הדפים, ומנגנון דיווח שמצלם מסך ומתעד כישלונות.
השיעור הבא בקורס: Maven - חלק 1

פרקי ההרצאה: סיכום החומר בקורס סלניום מתקדם - חלק 3

  1. 00:00

    הגדרות הטסט: Priority ו-Data Provider

  2. 01:19

    קריאה למתודות של ה-Page Object בטסט

  3. 02:49

    טיפול בכישלון של Assert

  4. 03:27

    טיפול בחריגה (Exception) וצילום מסך

  5. 04:34

    קריאת נתוני Excel ל-Data Provider

תמלול ההרצאה: סיכום החומר בקורס סלניום מתקדם - חלק 3

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

  1. 00:02

    בואו נדבר על מבנה הטסטים בתוך הפרויקט אוטומציה שלנו. אחרי שסרקנו את ה-Before Class ו-Before Method ואת המתודות הסטטיות הבסיסיות שמחזירות לנו גם URL וגם את ה-Driver, הגענו למבנה של הטסט עצמו.

  2. 00:20

    יש לנו את הנוטציה טסט, כאן אנחנו יכולים להגדיר את ה-Priority של הטסט והאם הוא ירוץ או לא על ידי Enable True or False. כאן יש לנו את המשתנה Data Provider.

  3. 00:31

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

  4. 00:44

    חשוב לזכור שהקובץ אקסל צריך להיות בספריית ה-resources שלנו, של הפרויקט. אני רואה פה את הקובץ Book1.exe שמהווה מבחינתי את ה-data source או את ה-data driven שלי בטסט הספציפי הזה.

  5. 01:04

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

  6. 01:36

    ה-Page Object לדוגמה Navigate, והמתודות האלה מחזירות ערך בוליאני במקרה שהם הצליחו נכשלות. ברגע שהם נכשלו בעצם אנחנו נצא ל-catch, אוקיי? אז יש לנו את המתודות מתוך האובייקט דפים שיצרנו בחלק העליון כ-instant לדפים עצמם, ולדוגמה יש לי פה את הקובץ, את ה-registered page, יש לי את ה-instant rp או יש לי את ה-field

  7. 02:10

    registration אז אני יכול ללכת ל-field רג'סטריישן ולראות פה ממש את המתודה שמבצעת את התעונה בתוך הרג'סטריישן ובסוף היא מחזירה טרואים אם היא מצליחה.

  8. 02:24

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

  9. 02:43

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

  10. 02:56

    האסרט מצפה לטור ולכן כשהוא מקבל פולס הוא נכנס לפה. מה קורה כאן? יש לנו הודעה שהטסט נכשל על הסרשן ארור והפניה ללוג וכאן יש לנו גם שליחה לריפורטר של הכישלון וכאן יש לנו את ה-Utility Add Snapshot, את הוספת סנפשוט לדוח ה-HTML שלי של הריפורטנג'י

  11. 03:21

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

  12. 03:46

    ואז אנחנו נבצע הודעה מתאימה, נפנה גם שוב ל-print screen של ה-utility print screen. ונדאג שהתוצאה של הטסט תהיה כישלון.

  13. 04:00

    כמו כן, גם נדפיס את ה-Print Stack Trace, נדפיס את ה-Exception עצמו, את הכישלון עצמו, על מנת לראות בדיוק מה קרה שם. אז זה לגבי המבנה של הטסט.

  14. 04:21

    בואו נראה עוד פעם את ה-Data Provider שלנו. אם אני הולך ל-Data Class שלי, אני רואה פה שיש לי את ה-Data Provider שנקרא Data for Mixel.

  15. 04:39

    פה אני משתמש כדי להשתמש בנתוני אקסל, וכאן יש לי את ההפניה למתודה get data from אקסל to object, ובסוף אני מחזיר את המערך הדו-מימדי. אז get data from אקסל, יש לנו את המתודה הזאת בעצם שקובעת את היכולת שלנו לקרוא מאקסל.

  16. 05:09

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

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

ההרצאה הקודמת: סיכום החומר בקורס סלניום מתקדם - חלק 2

ההרצאה הבאה: Maven - חלק 1

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

  • סיכום החומר בקורס AWS
  • סיכום החומר
  • מה לומדים בקורס סלניום - QA Selenium
  • רובוט VS סלניום

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

  • קורס מבוא ל-QA - מידע חשוב לבודק תוכנה
  • קורס פוסטמן - Postman - בדיקות לאתרי אינטרנט - API
  • קורס Robot Framework - בדיקות QA ממשק גרפי
  • קורס יסודות התכנות - שפת JAVA - קורס ג'אווה למתחילים
  • קורס סלניום בסיסי - בדיקות אוטומטיות - Selenium
  • קורס מייבן - Maven