PracticU

Page Object Design - חלק 4

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

Page Object Design - חלק 4
בשיעור רואים איך דף הרישום נבנה כמחלקה נפרדת בשיטת Page Object Design, וכיצד הטסט משתמש בה כדי למלא את הטופס.
בניית דף הרישום
1. הכרזה ובנאי: במחלקה RegistrationPage מכריזים על משתנה WebDriver ובונים בנאי שמקבל דרייבר ומשייך אותו.
2. מתודה למילוי הטופס: מתודה ציבורית מסוג בוליאני מוצאת את השדות בעזרת driver.findElement ומקלידה אליהם עם sendKeys, ומחזירה true.
3. זיהוי השדה: השדה מזוהה לפי התכונה name. בשיעור מודגמת הפעולה על שדה אחד בלבד, כדי לחסוך זמן.
הטסט
1. ייבוא ואתחול: הטסט מייבא את RegistrationPage ומאתחל אותה עם הדרייבר.
2. קריאה למתודה: הטסט שולח לה את השם, האימייל והסיסמה.
3. הרצה: בדיבאג רואים שהמתודה מתחילה למלא את השדות בדף הרישום.
הערות
בלי דרייבר המתודה לא יכולה לפעול, ולכן הדרייבר חייב להישלח לבנאי. בשיטה הזאת הטסט רק קורא לדף, והפעולות על השדות נמצאות במחלקה של הדף.
השיעור הבא בקורס: Page Object Design עם Method By

פרקי ההרצאה: Page Object Design - חלק 4

  1. 00:00

    מבוא לכתיבת דף רישום בשיטת הדפים

  2. 01:46

    שימוש באובייקט דף הבית בטסט

  3. 03:29

    יצירת מחלקת דף הרישום

  4. 05:00

    הכרזת WebDriver ובנאי לדף הרישום

  5. 06:22

    מתודה בוליאנית למילוי טופס הרישום

תמלול ההרצאה: Page Object Design - חלק 4

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

  1. 00:02

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

  2. 00:33

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

  3. 00:52

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

  4. 01:33

    before class, מפורמטות ואת הטסט עצמו שבטסט אנחנו מבצעים אתחול בעצם בטסט עצמו אנחנו מבצעים שימוש באובייקט הדף HP זה קיצור ל-Home Page אם אני הולך ל-HP אני רואה ש-Home Page ומה זה Home Page אם אני לוחץ קונטרול ולוחץ על השם של האובייקט הזה אני מגיע לאובייקט של Home Page שהוא מהותחל בעזרת הקונסטרקטור ב WebDriver ובעצם מאפשר לנו לבצע מתודה של פעולה בואו נריץ ונראה

  5. 02:16

    מה זה עושה אני שם דיבאג בשורה 70 כדי לא להגיע לקוויט של הבראוזר ומריץ את זה בדיבאג אוקיי יש לי פה את הפקד של הפייג'ס ואת הפקד של טסט יש לי טסט אחד ופייג' אחד והבראוזר שלי כרום הותחל באתר שאותו אני רוצה לבדוק time and date ובעצם בעזרת המתודה של ה-navigate שלחתי את ה-string register והגעתי לדף של

  6. 02:49

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

  7. 03:11

    אז בואו נדגים את זה איך אנחנו ממשיכים הלאה אני עושה סטופ להריצה שלי וחוזר בעצם ל-view הרגיל של Java על ידי לחיצה פה כרגע אני ב-mode debug אני מחזיר את זה ל-Java ובפקט של הפייג'ס אני יכול לבצע מקש ימני new class ואני אקרא לו register page זה הדף השני בפלואו שאנחנו רוצים אני לא מסמן

  8. 03:47

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

  9. 04:32

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

  10. 05:00

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

  11. 05:41

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

  12. 06:05

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

  13. 06:55

    הטסט תכף אנחנו נראה ואני עושה return true כי היא בוליאנית אז שהיא תהיה חוקית, ופה אני עושה דייבר נקודה findElement ביי בואו נראה את הזיהוי של השדה לדוגמה name אני לוחץ מקש ימני ובוחר ב-inspect ואני רואה

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

ההרצאה הקודמת: Page Object Design - חלק 3

ההרצאה הבאה: Page Object Design עם Method By

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

  • סיכום פרויקט אוטומציה במובייל - Maven, Page Object
  • Master Page
  • Object Serialization
  • המחלקה Object

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

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