מדריך | אוטומציה באמצעות Selenium | חלק 3 - WebElement

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

במדריך של היום אדבר על מהו WebElement ואסקור את ממשק IWebElement.

מה זה WebElement?

WebElement היא המחלקה בC# אשר מייצגת אלמנט HTML.

כל דף HTML מורכב מתגיות שונות, כל אחת בעלת יעוד ומשמעות שונה - לרוב תגית פתיחה ולאחר מכן תגית סגירה.
ניתן לראות דוגמה לכך באמצעות לחיצה על המקש הימני בשטח הדפדפן ולאחר מכן לחיצה על צפה במקור הדף (ctrl+U).


לדוגמה, התגית <head> - יכולה להכיל את כותרת הדף, סקריפטים, קבצי עיצוב ועוד..

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

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


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

פקודות IWebElement

לממשק מגוון פקודות שתפקידן לשלוט על האלמנט שמצאנו בדף ה HTML.


Clear()

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

Click()

במידה והאלמנט הינו אובייקט לחיץ, שימוש ב - Click יפעיל את הלחיצה עליו

Displayed

מאפיין בוליאני של האובייקט אשר מחזיר האם האלמנט מוצג/נראה או לא

Enabled

לפני שנבצע פעולה אוטומטית על אלמט נרצה לוודא שהוא Enabled , ז"א - שניתן לערוך אותו ולבצע בו שינויים

FindElement/s()


מוצא אלמנטים בתוך האלמנט בו אנחנו עובדים

GetAttribute()

נגיד ויש לנו את האלמנט
<img title="image" src="http://pics.com/pic1.png">

ונרצה לחלץ אך ורק את תוכן ה-src שלו נשתמש ב GetAttribute באופן הבא:
webElement.GetAttribute("src");

הערך שיחזור הוא: http://pics.com/pic1.png

GetCssValue()

מציאת ערכי CSS Attributes

Location

מחזיר את מיקום הימצאותו של האלמנט

Selected

מאפיין בוליאני של האובייקט אשר מחזיר האם האלמנט מסומן/נבחר או לא

SendKeys()

הכנסת טקסט עבור האלמנט (במידה ומתאפשר)

Size

מחזיר את רוחב ואורך האלמנט

Submit()

מבצע אישור/שליחה של האלמנט (סוג של לחיצת Enter)

TagName

מאפיין המכיל את שם התג של האלמנט

Text

מאפיין המכיל את הטקסט המוכל כרגע באלמנט



סיכום

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

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



תגובות

פוסטים פופולריים מהבלוג הזה

קודמתי לדרגת סיניור במיקרוסופט - מה למדתי בדרך

מהם קבצי DLL ואיך להשתמש בהם?

מדריך C# | שימוש ב LINQ