understandDev1

להבין את המפתחים, חלק 1

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

qa-mistakes

10 טעויות של QA מתחיל

בעקבות הפירסומים האחרונים שלי עם הפוסט: איך למצוא עבודה ב-QA ללא ניסיון והקורס QA החינמי שהוצאתי החלו לפנות אליי מספר רב של אנשים שמתכננים ללמוד או שסיימו לא מזמן קורסי בדיקות (כמעט מכל המכללות הפעילות כיום) ולכולם קשה מאוד למצוא עבודה. השוק על הפנים, המצב קשה, אין משרות לחסרי ניסיון ועד ועוד טענות כאלו ואחרות, […]

WeekendChallenge01

אתגר לסופ"ש, חלק 1

לפני כמה ימים העלתי לרשתות החברתיות אתגר סופ"ש לקהל הרחה לבוא ולפתור שאלה הקשורה בזיהוי אלמנט קצת לא טריוויאלי, אני חייב לציין שההיענות הייתה די מפתיעה וכי מגוון התשובות הרב באמת הרשים אותי, חלק מהפתרונות שהצעתם היו היו אינטליגנטיים וחסונים (זיהוי אלמנט שלא יישבר בקלות). אז נתחיל כמה צעדים אחורה… אני ביקשתי באותה מטלה לבוא […]

WarOfTheWorldsc

מלחמת העולמות, חלק 4 – סייפרס

בפרק הזה, הרביעי במספר בסדרת הכתבות שלי: מלחמת העולמות, אני הולך לסקור את הפריימוורק: Cypress את Cypress כתבו המפתחים בשביל ליצור משהו שונה, הם לקחו את המגרעות של סלניום – הדברים הכואבים לנו וכתבו להם פתרונות אינטיליגנטיים. הפריימוורק נכתב כפרוייקט קוד פתוח עם מוצר מסחרי מעליו (Dashboard), וגם הוא (כמו ה-Puppeteer) יושב מעל NodeJS ומהווה […]

WarOfTheWorldsb

מלחמת העולמות, חלק 3

בפרקים הקודמים של סדרת הכתבות שלי: "מלחמת העולמות" אשר עוסקת בשאלה מיהו אותו פריימוורק אוטומציה הטוב ביותר, ביצעתי סקירה על כמה פריימוורקים מובילים בתחום של אוטומציה מודרנית. ראינו כי ישנם מתמודדים חזקים שמתחילים לערער את מעמד Selenium WebDriver בשלטון, עם היציבות הבלתי מתפשרת ש-Cypress נותן לנו, המהירות המרשימה של Puppeteer או השילוב המנצח של Taiko. […]

טעויות נפוצות בפרוייקט אוטומציה

טעויות נפוצות בפרוייקט אוטומציה

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

findAllvsFindBys

FindAll vs. FindBys

את הפוסט הנוכחי החלטתי לכתוב מכיוון שכבר כמה תלמידים שלי נתקלו בבאותה שאלה שנשאלת בראיונות עבודה , זוהי השאלה המעידה על הבנה ב- Page Objects Pattern והיא הולכת כך: מהו ההבדל בין אנוטציית ה-FindAll לבין אנוטציית ה-FindBys ב-Page Objects  ?     אז כל מי שאי פעם התעסק עם Page Objects באוטומציה, לבטח יכיר את […]

WarOfTheWorldsa

מלחמת העולמות, חלק 2

לאחרונה התחלתי סדרה של פוסטים בהם אני סוקר פריימוורקים מובילים באוטומציה (שאינם מושתתים על ה-WebDriver API) תוך כדי השוואתם, יתרונות מול חסרונות. בפוסט הקודם לא הצלחתי להגיע להצהרה על הזוכה הגדול ולמען האמת, אותו כלי שאסקור היום הוא אינו הכלי הטוב ביותר באופן גורף לכולם. אבל כן ארצה: א. להציג אותו בפניכם, מכיוון שהוא יחסית […]

WarOfTheWorlds

מלחמת העולמות, חלק 1

אז מה ? אוטומציה, הא ? סלניום, כן ? בטח, רק סלניום. אין אוטומציה בלי סלניום… גישה זו רווחת בקרב לא מעט אנשים בתחום ולצערי גם אנשים שמתיימרים להיות "מומחי אוטומציה". אז בואו נשים את העובדות על השולחן: כיום סלניום הוא הפריימוורק הפופולרי והנפוץ ביותר באוטומציה, בטח ובטח אם אנחנו מדברים על אוטומציה על ה-Web. […]

cucumber

מבוא ל-Cucumber

ה-Cucumber הינו פריימוורק אוטומציה המממש את שיטת ה-BDD, או בהרחבה ה-Behavior Driven Development. זהו פריימוורק שנכתב במקורו בשפת Ruby וכותבים איתו כיום במגוון של שפות תכנות, ה-Cucumber הוא המקביל ל-SpecFlow שחי בעולם ה-NET. אך לפני שנצלול אל נבכי הפריימוורק והקוד, בואו נבין קודם כל מה זה בכלל אומר Behavior Driven Development ? ה-BDD הינה מתודולוגיה […]

mega_function

Mega Function

בשלהי העשור הקודם, כשנחשפתי לראשונה לתשתית אוטומציה (עוד בימים התמימים והעליזים של QTP ו-VB-Script), נחשפתי לראשונה למתילדה. מתילדה הייתה שמה של Mega Function, פונקציה אחת שעושה הכל ! בפרוייקט שלנו, כל מה שנרצה כל מה שנבקש – מתילדה תספק. כיום, עפ"י Design Pattern שונים ומתודולוגיות פיתוח מודרניים (לדוגמא – SOLID), אנחנו לומדים שבשביל לכתוב תשתית […]

smartWait

המתנה חכמה

נושא ההמתנות באוטומציה הוא נושא חשוב מאין כמוהו, בפרוייקט שלנו נהיה חייבים להכניס איזשהו מנגנון של המתנות בשביל שנוכל לשמור על יציבות הבדיקות. מה הכוונה ?  אנו נרצה לסנכרן בין המערכת הבודקת לבין המערכת הנבדקת שלנו, במילים אחרות אנו נרצה לסנכרן בין הקוד של הבדיקות שלנו, למשל סלניום, לבין האפליקציה אותה אנו בודקים (האתר למשל). […]