PracticU

כתיבת טסטים - דפדפן זיהוי אלמנטים - חלק 2

בלי כתוביותעם כתוביות
PracticU › קורס Appium - קורס אוטומציה במובייל › כתיבת טסטים - דפדפן זיהוי אלמנטים - חלק 2
מילון מושגים:
Appium - כלי בקוד פתוח לאוטומציה של בדיקות באפליקציות מובייל ל-Android ול-iOS.
Selenium - כלי לאוטומציה של דפדפן, המשמש בעיקר לבדיקות אוטומטיות של אתרים ויישומי אינטרנט.
Android - מערכת הפעלה מבוססת Linux לטלפונים ולמכשירים ניידים, שפותחה על ידי גוגל.
iOS - מערכת ההפעלה של אפל למכשירי iPhone ו-iPad.
סשן - פרק זמן של פעילות רציפה בין משתמש למערכת, שבו נשמר מידע על מצבו, למשל לאחר התחברות לאתר.
JSON - פורמט טקסט קריא לייצוג נתונים מובְנים כזוגות מפתח-ערך, נפוץ להחלפת מידע בין שרת ללקוח.
DOM - ייצוג עץ של מבנה דף HTML בזיכרון, שמאפשר לקוד לקרוא ולשנות את תוכן הדף ומבנהו.
דיבאג - תהליך של איתור, הבנה ותיקון תקלות בקוד, לעיתים בעזרת כלי שמאפשר לעצור ולעקוב אחר ריצת התוכנית.

כתיבת טסטים - דפדפן זיהוי אלמנטים - חלק 2
איך מזהים אלמנטים בדף שנפתח ב-Chrome על מכשיר אנדרואיד באמצעות Appium Inspector, ואיך מפעילים עליהם פקודות Selenium רגילות כמו קליק.
השלבים העיקריים
1. Capabilities נדרשים: platformName (Android או iOS), deviceName (המספר הסריאלי, חובה), platformVersion (לא חובה אך מסייע) ו-app (רלוונטי לעבודה מול אפליקציות, בהמשך). באתר התיעוד של Appium יש רשימה ודוגמאות של כל ה-capabilities.
2. Appium Inspector: בחלון הקונסול של Appium לוחצים על Start Inspector Session (זכוכית מגדלת) ומזינים Desired Capabilities.
3. שמות ה-capabilities: לוקחים אותם מאתר Appium, כי הם לא נכתבים בדיוק כמו בקוד ה-Java. מוסיפים deviceName, browserName ו-platformName עם הערך Android.
4. שמירה: שומרים את ההגדרות בפורמט JSON עם Save As (בהדגמה בשם Chrome Browser) ופותחים אותן שוב דרך Saved Settings.
5. Start Session: נפתח דפדפן ריק, מקלידים את כתובת האתר ולוחצים על Refresh באינספקטור.
6. בחירת אלמנט: לוחצים על אייקון זכוכית המגדלת ורואים את מאפייני האלמנט, וביניהם Text.
7. ב-Java: driver.get לוויקיפדיה, driver.findElement עם By.xpath שמחפש לפי טקסט על פני ה-DOM, ואז click.
פקודות והגדרות
- בדיקה בהרצת Debug עם breakpoint, ובמקביל מעקב דרך AnyDesk ובלוג של Appium.
השיטה מראה שאפשר להשתמש בפקודות Selenium בסיסיות על אלמנטים בתוך דפדפן המכשיר הנייד.
השיעור הבא בקורס: כתיבת טסטים - דפדפן זיהוי אלמנטים - חלק 3

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

  1. 00:00

    זיהוי אלמנטים ופקודות Selenium

  2. 00:37

    Platform Name, Version ו-Device Name

  3. 01:15

    תיעוד Desired Capabilities באתר Appium

  4. 01:52

    יצירת AndroidDriver וזיהוי אובייקטים

  5. 02:25

    Inspect עם Developer Tools במחשב

  6. 03:22

    הקושי בזיהוי אלמנטים במובייל

  7. 04:02

    Start Inspector Session ב-Appium

  8. 04:42

    Capabilities לסשן ה-Inspector

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

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

  1. 00:02

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

  2. 00:18

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

  3. 00:35

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

  4. 00:46

    אז יש לנו את ה-Required Capability, יש לנו כמה קפביליטי שאנחנו הכרנו כבר, יש לנו כמה שאנחנו נכיר תוך כדי עבודה, יש לנו את ה-Platform Name שזה או iOS או אנדרואיד, יש לנו פלטפורם ורז'ן שזה לא חובה אבל זה יכול לסייע, זו גרסת האנדרואיד לדוגמה, device name שזה הסריאל המספר הסריאלי שאותו אנחנו רוצים לעבוד איתו יש לנו את האפ שנכיר

  5. 01:12

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

  6. 01:37

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

  7. 01:57

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

  8. 02:20

    submit ולראות האם התוצאה התקבלה. אז לצורך כך אנחנו צריכים לזהות את ה-Web-Element בעצם של הזכוכית מגדלת. איך אנחנו מזהים את ה-Web-Element?

  9. 02:33

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

  10. 02:51

    בוא נזכיר, אם אני רוצה לזהות Web-אלמנט כאן בדף הכרום הרגיל שלי, כשאני לא עושה בדיקות מובייל, אז אני יכול ללכת ל"הגדרות" "More Tools", "Developer Tools", ולעשות את הפעולת Inspect על אותו אלמנט שאני רוצה, האייקון הזה ואז אני עושה מכש ימני copy/expat

  11. 03:13

    ואני יכול לעבוד עם ה-expat הזה כדי לזהות את ה-Web אלמנט. המצב קצת שונה כשאנחנו עובדים מול דיווייס מובייל. יש לנו איזשהו קושי לזהות את זה בעזרת הכלי שהראיתי עכשיו שהוא היה על BC. אז זה איך בעצם אנחנו נזהה את ה-Web אלמנט הזה דרך הדיווייס הליד שלי המובייל שלי דיווייס מובייל.

  12. 03:40

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

  13. 04:15

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

  14. 04:48

    אז הדברים שאנחנו נהיה חייבים לתת זה device name, אנחנו יכולים לתת כמה שאנחנו רוצים אבל יש קפביליטי שהוא חובה, device name, ה-value של ה- device name הוא אותו קפביליטי שנתתי כ-serial number של המכשיר שעליו אני מבצע את הבדיקה, device name.

  15. 05:10

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

  16. 05:35

    נכונה. קפביליטי נוסף חובב האחרון הוא capability platform name,

לקורס המלא: קורס Appium אונליין

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

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

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

  • דפדפן Tor - Windows 11
  • אובייקט Window (דפדפן עצמו)
  • כל מה שצריך לדעת על טסטים ב-QA - חלק 1
  • זיהוי מגע באנדרואיד

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

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