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

במה מדובר ? בתשתית אוטומציה מהסוג הזה שבקלות ניתן לחשוב שהוא כלי מסחרי על פי כמות הפיצ'רים שהוא מכיל (מזכיר את ה-Katalon Studio הצעיר יותר בהיבט הזה), כלי האוטומציה הזה, מתוצרת חברת PrimaTest, יכול להוות פתרון טוב למי שמעוניין להכניס בדיקות אוטומטיות אצלו באירגון על קליינטים מסוג Web / Mobile, במיוחד אם רוב אנשי הבדיקות שלו אינם בעלי רקע תכנותי. נכון, יש לו גם מגרעות – אותן נכסה גם כן בפוסט זה בהמשך הדרך.

אז מה יש ל-RedwoodHQ להציע לנו ?

* התקנה פשוטה וחלקה

* כלי מעוצב כהלכה, ברור וקל לעבודה

* יכולות יצירה וניהול בדיקות אוטומטיות וסוויטות של בדיקות אוטומטיות

* אפשרות לבניית מקרי בדיקה אוטומטיים ללא צורך ביכולת קידוד (עפ"י שיטת ה-KDT)

* אפשרות להוסיף יכוללות קידוד למי שמעוניין להרחיב את התשתית הקיימת שמגיעה כבר Out of the box

* מערכת דוחות מושקעת הכוללת גם צילומי מסך

 

 

יאללה, בואו נצלול לעומק יותר, אך לפני שנתחיל, בואו נבין מה ה-RedqoodHQ יודע לבדוק ?

1. API Testing , Soap / REST

2. בדיקות פונקציונליות מעל ספריות הקוד של Selenium WebDriver / Appium

3. CLI Commands

4. בדיקות DB

 

באילו שפות תכנות ניתן לעבוד עם RedwoodHQ ?

1. #C

2. Groovy

3. Java

4. Python

 

התמשקות ישירה למנועי ההרצה והבדיקה:

1. TestNG

2. Junit

 

התמשקות ישירה לכלי CI:

1. Jenkins

2. TeamCity

 

redwood01

 

עבודה עם RedwoodHQ מתבצעת באריטקטורת Server – Client , כך שצוות של בודקים יכול לעבוד עם Redwood מבלי לדרוך על האצבעות אחד של השני. הכלי מגיע עם הרשאות שונות למודולים השונים בכלי

redwood02

כאשר עובדים על סלניום \ אפיום הכלי מגיע כבר עם מגוון של פונקציונליות ממומשת Built-in כפי שניתן לראות בדוגמא כאן – מימוש של פעולת ה-double click על אלמנט מסויים, המימושים מגיעים בשפת Groovy וכמובן שניתן ליצור מימושים משלנו בכל שפה הנתמכת בכלי (ומוזכרת למעלה)

redwood03

את הפעולות האטומיות הללו ניתן לאגד למקרי בדיקה בצורה מאוד נוחה:

redwood04

 

ניתן כמובן להשתמש במשתנים (variables) לעבודה נוחה יותר וצימצום השימוש Hard Coded בערכים שמשתנים:

redwood05

וכמו הרבה מאוד frameworks אחרים, גם הפתרון כאן יתן לכם את היכולת להריץ במקביל בצורה מאוד פשוטה ונוחה:

redwood06

redwood07

 

ולהרצה על מכונה מרוחקת נוכל להשתמש בחיבור VNC שמוטמע כבר בתוך Redwood:

redwood08

 

מערכת הדוחות (Reporting) שלהם מוצגת כך:

redwood09

 

ויש להם גם אגרגציה של הרצות עם ניתוחי תוצאות:

redwood10

מערכת Git מובנית:

redwood11

 

זיהוי אלמנטים מובנה עם כלי: Looking Glass מאוד נוח לעבודה:

redwood12

 

שיכול לבצע גם הקלטות של מקרי בדיקה מעל הדפדפנים:

redwood13

 

וגם אפשרות להתחבר ל-Mail Server בכדיי שנקבל את דו"ח התוצאות למייל שלנו בצורה אוטומטית עם סיום הריצה:

redwood14


 

מלהיב נכון ?

ועכשיו לדברים הפחות כיפים של הכלי הזה :

1. תהליך ההתקנה אמנם Straight Forward אך יזגול כ-40 דקות מחייכם

2. בשביל לעבוד עם Redwood תאלצו להיפרד מבערך 2GB מהדיסק שלכם

3. הכלי מגיע עם IDE מובנה , והוא לא מגיע ברמתו ל-IDE הפופולריים שאנו רגילים לעבוד איתם (נרגיש בהבדל בעיקר כשנרצה לדבג את הקוד)

3. תחילת עבודה עם מול דפדפנים תארך בסביבות ה-30 שניות (פתיחת סשן לדפדפן ועבודה מול הדרייבר שלו)

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

5. לאלו העובדים מול בדיקות API , יש מגבלה של מספר התווים שניתן להעביר

6. כמות העידכונים של המוצר אינה מספקת. העידכון האחרון שיצא, התרחש בחודש אוגוסט 2017 (והיום אנחנו בסוף ינואר 2018…) – כמעט חצי שנה ללא עידכונים זה נצח בעולם התוכנה שדוהר קדימה.

 

אני מזמין אתכם לקרוא את הפוסט שאלי אלימלך העלה בקבוצת הפייסבוק אחרי מחקר שלו (מול חברה העובדת בכלי הזה כמה שנים): https://www.facebook.com/groups/QA.Test.Automation.il/permalink/447044572357807/

 

בשורה התחתונה, הפוטנציאל הטמון בכלי הזה הוא אדיר, רק חבל ש-PrimaTest לא השכילו לעבוד במודל שונה כמו הרבה מאוד חברות אחרות, אני לא יודע עד כמה ניסו לדחוף אותו קדימה, אבל מבחינת הפופולריות שלו ברשת הוא די מדשדש מאחור. עוד בשנת 2014, חשבתי (או קיוויתי נכון יותר) כי הכלי הזה הולך להיות להיט בכל חברת תוכנה הזקוקה לבדיקות אוטומטיות…

אני באופן אישי לא חושב שהמודל הזה נכון ("קח מוצר בחינם – שלם על התמיכה") בימינו, בעולם הרווי הזה של עודף Frameworks באוטומציה. בינתיים הוא לא מוכיח את עצמו (דוגמא נוספת היא -Serenity שבעתיד אולי אכתוב עליו פוסט נפרד).

אבל בכל זאת, הוא נותן פתרון סביר לחברות שאין להם אנשי קידוד בצוות הבדיקות והם צריכים פתרון אוטומטי לאפליקציות Web לא מורכבות מידיי, שזה אומר שהם יסתפקו בתשתית הפונקציונליות הקיימת של Redwood מבלי הצורך להרחיב אותה (אגב, התשתית הזו תיתן מענה של למעלה מ-90 אחוזים מהפעולות על דפדפנים).

השאר הערה\הודעה