בפוסט בעבר דיברנו על מגבלה של סלניום בזיהוי אלמנטים מעל אלמנטים גרפיים, הצעתי פתרון של עבודה בסלניום מול ממשק ה-sikuli. בפוסט זה ארחיב את הנאמר ואציע פתרון שונה לאותה הבעיה – זיהוי אלמנטים על אפליקציית Flex (או בשמה השני – Flash). נתחיל בדוגמא לאפליקצייה כזו: משחק מירוץ המכוניות הזה למשל: שימו לב, כי כאשר […]
סלניום
סלניום עם Object Repository
לפי השם – Object Repository , ניתן לנחש שמדובר כאן בסוג של מבנה נתונים. זהו למעשה אוסף של אובייקטים והמאפיינים שלהם המוגדרים במקום אחד, מקום זה יכול להיות קובץ טקסט, XML, HTML, Properties, בתוך טבלה ב-Data Base וכו'. תשתית האוטומציה יודעת לקרוא מתוך הקובץ את האובייקטים ובכך לדעת כיצד לגשת לאותם אלמנטים על המסך. עבודה […]
Sikuli Webdriver
לסלניום Webdriver יש מגבלות. הוא אינו יודע להתמודד עם נושאים מסויימים, זה ידוע למשל שהוא מוגבל לעבודה בתוך תחומי הדפדפן, ומה גם שבתוך הדפדפן יש לו בעיות גם להתמודד עם אלמנטים גרפיים למשל. לשמחתנו הרבה ישנן פתרונות לכל (טוב נו, לרוב) המגבלות הקיימות בסלניום , כך למשל ניתן להריץ מתוך קוד הסלניום שלנו קובץ Exe […]
סלניום עם ג'אווה סקריפט – חלק ב
בפוסט הקודם למדנו כיצד אנחנו מחברים כלים וספריות שונות למערכת בדיקות אחת שבתיאוריה יודעת לקרוא את הקוד ב-JS, לפרסס אותו ולהתממשק מול אלמנטים שעל הדפדפן. בחלק השני של הפוסט "נוכיח" תאוריה זו על ידי כתיבה והבנת הקוד. לפני שנתחיל לכתוב את הבדיקה הראשונה שלנו, בואו נראה את מה נבדוק. בכתובת הבאה: https://atidcollege.co.il/Xamples/bmi/ תוכלו לראות מחשבון BMI אשר […]
סלניום עם ג'אווה סקריפט – חלק א
בפוסט זה אציג פתרון חדשני, פחות מוכר אך לא פחות מעניין לביצוע בדיקות אוטומטיות על גביי הסלניום Webdriver. אם עד עכשיו הצגתי עבודה מול סביבות פיתוח וטכנולוגיות מובילות לאוטומציה, כעת אראה כיצד ניתן לכתוב את הטסט הראשון שלנו עם הסלניום Webdriver אשר מתממשק למנוע ה-Node.js שבפועל מריץ את קוד ה-Java Script , מי שיזין למנוע […]
הטסט הראשון שלי : Selenium WebDriver Java/FireFox
אז אחרי שהבנו כי האירגון בו אנו עובדים זקוק לבדיקות אוטומטיות, וכי סלניום הוא הכלי המתאים לנו ביותר (למעשה, הסלניום הינו כלי הבדיקות האוטומטיות הנפוץ ביותר בעולם הבדיקות כיום), נשאלת השאלה, אוקיי מאיפה מתחילים ? כיצד מתקינים, מטמיעים וכותבים קוד בסלניום ? זוהי אחת השאלות הנפוצות ביותר שאני זוכה לשמוע הן מחברים שרוצים להתחיל ללמוד […]
הטסט הראשון שלי : Selenium WebDriver C#/Chrome
אז אחרי שהבנו כי האירגון בו אנו עובדים זקוק לבדיקות אוטומטיות, וכי סלניום הוא הכלי המתאים לנו ביותר (למעשה, הסלניום הינו כלי הבדיקות האוטומטיות הנפוץ ביותר בעולם הבדיקות כיום), נשאלת השאלה, אוקיי מאיפה מתחילים ? כיצד מתקינים, מטמיעים וכותבים קוד בסלניום ? זוהי אחת השאלות הנפוצות ביותר שאני זוכה לשמוע הן מחברים שרוצים להתחיל ללמוד […]
Selenium Grid – התקנה, הגדרה והרצה
ה-Grid הוא חלק מסוויטת המוצרים של Selenium שכוללת בין היתר גם את ה-WebDriver ,ה-IDE וה-Appium הוא בא לתת פתרון להרצות מקבילות וכיסויים נרחבים יותר על סביבות שונות, מבחינה הירארכית ניתן להסתכל על ה-Grid כשכבה מעל ה-WebDriver. עם ה-Grid נוכל בלחיצת כפתור להריץ את אותם סטים של בדיקות בו זמנית על מערכות שנות כמו למשל Chrome/Win […]
סלניום – Selenium
אין ספק כי אחד מפתרונות האוטומציה הפופולריים ביותר בתעשייה כיום הוא ה-Selenium. וזאת על אף מגבלותיו לצאת את תחומי הדפדפן. הוא חינמי, יש לו את קהל המשתמשים הגדול ביותר לכלי אוטומציה ובהתאם לכך מספר הרפרנסים, המדריכים, השאלות והתשובות הכי נרחב שתמצאו ברשת. אז מה זה למעשה הפיתרון הזה ? במאמר זה ארחיב על המודולים המרכיבים […]
שיעור 5: טיפול בפקדים
בשיעורים הקודמים ראינו כיצד ניתן לזהות אלמנטים על ה-DOM בדרכים שונות. כעת נלמד מה ניתן לעשות איתם לאחר הזיהוי, כיצד ניתן לטפל בהם. לכל פקד (אלמנט) יש דרך התמודדות שונה, אותה אנו נראה מיד. Radio Button: הפקד הראשון ואולי הפשוט ביותר הוא כפתור הרדיו, כפי שניתן לראות בדוגמא כאן: כאשר הקוד שלו נראה כך: […]
שיעור 11: חיבור לדפדפנים
לפני הופעת סלניום WebDriver אנשי האוטומציה הסתפקו בגרסתו המוקדמת יותר שנקראה – Selenium Remote Control אשר חייב את המשתמשים להתקין שרת שידבר עם הדפדפנים השונים. ה-WebDriver הביא איתו שינוי תשתיתי שזנח את אותו חיבור לשרת והביא לנו את היכולת לעבוד ישירות מל הדפדפנים בעזרת דרייברים. חיבור מסוג זה שיפר את ה-Performance של ההרצות בזכות העבודה […]
טיפים וטריקים: כללי
העלאת קבצים: במהלך הקורס הזכרתי כבר את המוגבלות של סלניום לעבור לחלונות שאינם שייכים לדפדפן עצמו, אחד מהמקרים הוא חלון ה-windows להעלאת קבצים. דרך אחת להתמודדות העניין הראתי בשיעור 21 תוך עבודה עם מחלקה חיצונית – Robot Class , דרך שנייה הצגתי בשיעור 22 בעבודה מול כלי חיצוני שנקרא AutoIT. למען האמת, ניתן לפתור בעיה […]