PracticU

המרה של Web Element ל-Select

בלי כתוביותעם כתוביות
PracticU › קורס סלניום בסיסי - בדיקות אוטומטיות - Selenium › המרה של Web Element ל-Select
מילון מושגים:
אינדקס - מבנה במסד נתונים שמאיץ חיפוש ושליפה. גם מספר המציין מיקום של איבר במערך.
תגית - סימון בקוד, למשל ב-HTML, שתוחם רכיב ומגדיר את תפקידו או תכונותיו. גם תווית לסימון וקיטלוג פריטים.
משתנה - שם שמפנה למקום בזיכרון שבו נשמר ערך שיכול להשתנות במהלך ריצת התוכנית, כמו מספר, טקסט או אובייקט.
אובייקט - יחידה בתכנות מונחה עצמים שמאגדת נתונים (תכונות) ופעולות (מתודות). נוצר בדרך כלל ממחלקה המשמשת כתבנית.
מתודה - פונקציה המוגדרת בתוך מחלקה ומתארת פעולה שאובייקטים מאותה מחלקה יכולים לבצע.

המרה של Web Element ל-Select
השיעור מציג איך ממירים WebElement רגיל מסוג drop-down, שמוצג כרשימה נפתחת, ל-Select משוכלל. עם Select אפשר לבחור ערכים לפי טקסט, אינדקס או ערך, ולסרוק את כל האפשרויות.
השלבים העיקריים
1. זיהוי הרשימה: בכלי הפיתוח בודקים שהאלמנט הוא תגית select, ושבתוכו יש תגיות option. לדוגמה, רשימה של city, country ו-time.
2. זיהוי האלמנט: מוצאים את ה-select לפי ה-id שלו בעזרת findElement(By.id(...)), ושומרים אותו במשתנה מסוג WebElement.
3. המרה: יוצרים אובייקט חדש מסוג Select בעזרת new Select(element). מעכשיו יש גישה לכל המתודות של Select.
4. בחירה לפי טקסט: selectByVisibleText("time") בוחרת את האפשרות שהטקסט שלה נראה למשתמש. אפשר גם לבחור לפי אינדקס או לפי value.
5. סריקת האפשרויות: getOptions() מחזיר רשימה של כל ה-options. לולאת for עוברת על הרשימה, ומדפיסה את הטקסט של כל אחת בעזרת getText().
שימו לב
השיעור מדגים את המרה ל-Select לפני השימוש במתודות שלו. WebElement רגיל לא מכיר את המתודות של בחירה.
תרגלו על רשימה נפתחת אחרת באתר, ובדקו את שלוש דרכי הבחירה: לפי טקסט, לפי אינדקס ולפי value.
השיעור הבא בקורס: Actions on WebDriver

פרקי ההרצאה: המרה של Web Element ל-Select

  1. 00:00

    הקדמה: מה זה Select ב-WebElement

  2. 00:39

    למה צריך לסרוק אלמנט Select

  3. 01:13

    זיהוי Select בכלי הפיתוח

  4. 02:31

    יצירת מחלקה לתרגול המרת Select

  5. 03:40

    האפשרות להמיר אלמנט לסלקט

  6. 05:42

    יצירת אובייקט Select עם new Select

  7. 07:00

    בחירת אפשרות לפי visible text

  8. 08:35

    סריקת כל האפשרויות לתוך מערך

תמלול ההרצאה: המרה של Web Element ל-Select

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

  1. 00:02

    שלום, בשיעור הקרוב נדבר על Select, Web-Element מסוג Select. בואו נתחיל ונסביר בדיוק למה אנחנו מתכוונים. הכרנו את ה-Web-Element שלנו, זיהינו אותו בתוך ה-Web-Driver על ידי אקספאנט או ה-ID שלו או אטריביוט אחר.

  2. 00:21

    יש אלמנטים מסוימים, Web-Element מסוימים, שהם בעצם מכילים בתוכם עוד Web-Elements והם מוצגים בתור Select, Select Table או Select List.

  3. 00:36

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

  4. 00:47

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

  5. 01:00

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

  6. 01:20

    לפני שאנחנו עושים כל דבר אנחנו צריכים להבין שיש לנו WebElement שהוא בעצם Select או שה-Select מסתתר בתוך ה-WebElement.

  7. 01:32

    איך נעשה את זה? אנחנו יכולים לפתוח את ה-InspectTool ב-DeveloperTool של הכרום, להצביע על אותו drop-down list שאנחנו חושדים בו במרכאות שהוא Select ולראות האם באמת הוא מכיל בתוכו את האובייקטים או את ה-WebElementOption.

  8. 01:57

    Select, Tag Select מכיל בתוכו אופשיין והסלניום מאפשר לנו לאיזשהו גישה לאותם אלמנטים ל-Options שנמצאים בתוך ה-Select.

  9. 02:11

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

  10. 02:31

    יצרתי לעצמי קלאס, קלאס לתרגול. אנחנו רואים שבקלאס יש את הדברים שאנחנו כבר מכירים, את ההכרזה על משתנה מערכת של chrome.webdriver.driver, קריאה ל- chrome.exe, WebDriver, New ChromeDriver, אנחנו יוצרים דרייבר מסוג ChromeDriver, אינסטנט של WebDriver,

  11. 02:53

    ופה אנחנו עושים פעולות מנאג', מקסימייז ואימפליסיט וייט מה שעוזר לנו בעצם להמתין לאלמנטים איטיים שניתנים בדום תוך כדי הרצה. בואו נריץ את זה ונראה על מה אנחנו מדברים אני הולך ל-run ואני מריץ אותו קראתי לקלאס שלי convert web element to select פתחתי בעצם בראוזר מסוג חום עשיתי לו מקסימייז וטענתי

  12. 03:21

    את הדף עליו אני אריץ את הבדיקה. אני רואה פה שיש לי איזשהו אובייקט WebElement ואם אני לוחץ על החצי הקטן בצד אני רואה שיש לי אפשרויות לבחור city, country, time. נגיד שאני רוצה לבחור ב-time, איך אני אעשה את זה?

  13. 03:40

    אז יש כמה אפשרויות שה-select הוא מאפשר לנו אבל האפשרות שאנחנו רוצים ללמוד היום והאפשרות הקלה ביותר זה האפשרות להמיר את ה-WebElement הזה מסוג סלקט לווב אלמנט משוכלל שמאפשר לנו עוד מגוון של אופציות אז בואו נראה אני פותח את ה more tools developer tools אני אמקם את ה developer tools שלי בתחתית הדף זה יותר נוח

  14. 04:12

    לי אני אצביע על אותו גליסט שאני רוצה להעביר אותו מ-web אלמנט רגיל ל-select-web-element ואני רואה באמת שזה סלקט טאג סלקט ובתוכו אם אני לוחץ על החצי השחור פה אני רואה שהוא מכיל אופצ'יונס אופצ'יונס אחד וליו אפס סלקטד והטקסט הוא סיטי אחר כך יש טקסט קאנטרי

  15. 04:37

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

  16. 04:53

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

  17. 05:53

    שהוא WebElement רגיל אובייקט משוכלל מסוג Select איך נעשה את זה נכריז על Instant או על Class Select נקרא לה Select After ופה נעשה New נכריז על ה-select, מה שהוא צריך לקבל זה בעצם את המשתנה המקורי.

  18. 06:19

    שוב, אני חוזר על ההסבר, מצאנו את ה-object-hub שהוא ה-select, ועל מנת להמיר אותו ב-select משוכלל עשינו select, נתנו שם ל-instant, ופה אמרנו שזה new-select והצבנו בתוכו את ה-web-element הרגיל שמצאנו בשורה הקודמת, שורה 27. אוקיי, יפה, אז כל מה שנותר לנו עכשיו זה להשתמש ב-select

  19. 06:46

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

  20. 07:02

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

  21. 07:26

    הסידורי, 0, 1, 2, 3, לפי סדר ההופעה, יש לי לפי ה-value ויש לי לפי ה-visible text, אז בואו נגיד שאני רוצה להריץ לפי ה-visible text, זה הכי פשוט ואני אקיש פה את ה-visible text שאני רוצה לבחור לדוגמת time, בואו נחזור ונגיד מה אנחנו רוצים לעשות,

  22. 07:49

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

  23. 08:31

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

  24. 08:51

    איך נעשה את זה? אנחנו נכניס את התוצאות למערך,

לקורס המלא: קורס סלניום Selenium בסיסי

ההרצאה הקודמת: Wait For Web Element - חלק 3

ההרצאה הבאה: Actions on WebDriver

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

  • פקודת Select
  • מה זה Web Service
  • TS Web Access
  • ביצוע המרה - Cast

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

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