אז אחרי שהבנו כי האירגון בו אנו עובדים זקוק לבדיקות אוטומטיות, וכי סלניום הוא הכלי המתאים לנו ביותר (למעשה, הסלניום הינו כלי הבדיקות האוטומטיות הנפוץ ביותר בעולם הבדיקות כיום), נשאלת השאלה, אוקיי מאיפה מתחילים ? כיצד מתקינים, מטמיעים וכותבים קוד בסלניום ? זוהי אחת השאלות הנפוצות ביותר שאני זוכה לשמוע הן מחברים שרוצים להתחיל ללמוד […]
אוטומציה
בחירת תאריך עם סלניום
באפליקציה שלנו אנו נתקלים בפקדים שונים , כאלו שפשוט לאטמט (To Automate) עם סלניום כמו כפתורי רדיו (Radio Buttons) , שדות טקסט וכו' , כאלו שקצת קשה יותר לאטמט כמו ComboBox וכאלו שעוד קשה יותר לאטמט כמו ה-DatePicker. אין זה אומר שזוהי משימה בלתי אפשרית, רק פשוט צריך להחיל איזושהי לוגיקה מסויימת על הפקד בשביל […]
LoadableComponent
אחד היתרונות הגדולים באוטומציה הוא גם אחת מהנקודות הכואבות – המהירות. כולנו מסכימים שביצוע פעולות אוטומטיות בקצב מהיר זה טוב ויפה, אז איפה יכולה להיות בעיה ? במקרים בהם המערכת הנבדקת – System Under test איטית למשל בתעבורת הרשת (נגיד בין הקליינט לסרבר), או כשהיא מגיבה לאט, תוכל להיווצר לנו בעיה – חוסר סינכרון. זמן […]
זיהוי אלמנטים דינאמיים
לא מזמן הועלתה שאלה מעניינת באחת מקבוצות הפייסבוק אליהן אני מקושר – כיצד סלניום יכול לזהות אלמנטים שנוצרים בזמן ריצה (On The Fly) ? התשובה שעניתי הייתה קצת מתומצתת והעלתה לי רעיון לפוסט חדש בו ארחיב על מגוון הדרכים אותן ניתן לתפוס אלמנטים דינאמיים. אז קודם כל בואו נבין מה הכוונה אלמנט דינאמי […]
סלניום עם HTML5 Video
סלניום יודע להתמודד ולעבוד עם כל (טוב נו, רוב) הפקדים המופיעים על הדפדפן, מול חלקם ניתן לעבוד בצורה טריביאלית – לחיצה על כפתור , הכנסת מלל לשדה טקסט, בחירת נתון מתוך רשימה יורדת (Drop Down) ועוד… ישנם פקדים מעט מסובכים ועבודה מולם עם סלניום דורשת מאיתנו קצת יותר מאמץ כמו בחירת תאריך ושעה מתוך ה-Date […]
בדיקות צד שרת עם JavaMail API
נעשה קצת הפסקה מסלניום ובדיקות על קליינט אבל עדיין נשאר בתחום האוטומציה. בפוסט זה אדבר קצת על בדיקות צד שרת עם API. ה-API איתו נעבוד נקרא JavaMail והבנת בסיס העבודה עימו תיתן לנו הבודקים יכולות בדיקה גבוהות מאוד החל מבדיקות פשוטות של קבלת דואר, דרך בדיקת קיום ספאם מייל, עד בדיקת פונקציונליות "עדינות" של האם […]
MyTable API
במהלך עבודתי בפיתוח אוטומציה, יוצא לי לעבוד לא מעט על טבלאות. עם הזמן ניסיתי כל מיני דרכים לשכלל וליעל את עבודתי, אז בין ה-TR ל-TD התחלתי לכתוב לולאות ורשימות, עבדתי עם APIs שונים כמו ה-HTMLAgilityPack וה-jSoup (שהוא מעולה אך לא מספיק אינטואטיבי לטעמי), ובסופו של דבר החלטתי לכתוב API משל עצמי, אחד כזה שיהיה ברור, […]
Appium Vs. Selendroid
רבים מהסטודנטים שלי שואלים, עם איזה כלי עדיף לעבוד באוטומציה על מובייל: אפיום או סלנדרואיד ? תמיד אני עונה כי השאלה אינה נכונה, זה לא לא מה עדיף , אלא מהו בדיוק הצורך. בפוסט זה אסביר על ההבדלים בין שתי סביבות העבודה לבדיקות אוטומטיות מעל פלטפורמת המובייל, שתי הסביבות המובילות כיום בשוק. בדיקות אוטומציה על […]
קורס אוטומציה פרונטלי עם Selenium Webdriver
לאורך השנים האחרונות, עם התפתחות הבדיקות האוטומטיות במישור אחד וההתפתחות המטאורית של פיתוח אפליקציות על גבי ה-Web במישור השני, קהילת הבודקים הייתה זקוקה לפלטפורמת בדיקות חזקה ויציבה, שעובדת על דפדפנים ועליה ניתן ליצור סטים שלמים של בדיקות פונקציונליות. אין ספק כי אחד מפתרונות האוטומציה הפופולריים ביותר בתעשייה כיום הוא ה-Selenium Webdriver וזאת על אף מגבלותיו […]
יצירת מחשבון ב-JS
ישנן דרכים רבות לכתוב מחשבון ב-Java Script ולהציגו ב-HTML , בפוסט זה אראה דרך שנחשבת יחסית לפשוטה. אך תחילה, בואו ונראה את הדמו: בחלק ה-HTMLי נגדיר בתוך טבלה את הכפתורים שלנו עם ערכי המספרים כשלכל כפתור נגדיר OnClick Event . כל הכפתורים מלבד כפתור ה "=" , יקראו לפונקציית pushButton כאשר מעבירים לה את ערך […]
ערכים דינאמיים ב-JS
בפוסט זה הסביר כיצד ניתן ליצור חישובים מתמטיים On the fly בדף HTML. אז בואו נראה למה אני מתכוון, במחשבון שנראה כאן, אני יכול להכניס ערכים של מחיר מוצר ומחיר הנחה והמחשבון יפלוט לי את אחוזי ההנחה לפי הפרמטרים: ניתן לראות כי אחוזי ההנחה משתנים באופן דינאמי בהתאם לערכים המוצבים בשתי השדות האחרים: מחיר מחירון […]
סלניום עם Flex
בפוסט בעבר דיברנו על מגבלה של סלניום בזיהוי אלמנטים מעל אלמנטים גרפיים, הצעתי פתרון של עבודה בסלניום מול ממשק ה-sikuli. בפוסט זה ארחיב את הנאמר ואציע פתרון שונה לאותה הבעיה – זיהוי אלמנטים על אפליקציית Flex (או בשמה השני – Flash). נתחיל בדוגמא לאפליקצייה כזו: משחק מירוץ המכוניות הזה למשל: שימו לב, כי כאשר […]