ייעוץ והקמת תשתיות אוטומציה
השקעה והטמעה של פרוייקטי אוטומציה היא אתגר לא פשוט. ישנן חברות רבות אשר לא מכירות בחשיבותן של הבדיקות האוטומטיות וישנן כאלו שלא יודעות להעריך נכון את הגישה הנכונה ואופן הטיפול באספקטים השונים שבפרוייקט. במקרים כאלו מומלץ להתייעץ עם מומחה לתחום שייתן הכוונות והקמה של שירותי אוטומציה באירגון.
בנוסף לקורסי ההדרכות שאני מעביר, שירותיי כוללים גם הקמות והטמעות של מערכות אוטומציה לאירגונים קטנים , בינוניים וגדולים.
אשמח להפגש עמכם לשיחת היכרות בה נלמד את הסביבות שלכם והטכנולוגיות בהן אתם עובדים וביחד “לתפור” את פתרון האוטומציה המתאים ביותר לארגון.
למי השירות מיועד ?
– חברות המעוניינות בייעוץ ליווי של פרוייקט אוטומציה.
– חברות המעוניינות בהקמה מ-Scratch של תשתית אוטומציה.
– חברות המעוניינות בהכשרה והדרכה של צוותים קיימים.
– חברות המעוניינות לגייס שכירים \ יועצים לתקופה מוגבלת בעזרה לעיבוי הטסטים (תשתית קיימת).
תיאור של ארכיטקטורת מערכת אוטומציה:
להלן רשימת הקומפוננטות המרכיבות תשתית אוטומציה - Framework
1. Page Object Model
2. Page Object Factory
3. Error Handling
4. Recovery Functionality
5. Reporting System
6. Screen Shot + Screen Cast Abilities
7. Working with External Files (Configuration)
8. Support Visual Testing (GUI Testing)
9. Support Multiple Browsers
10. Logging System
11. Working with Object Repository
12. Interfacing Data Base
13. Support Data Driven Testing
14. Support Keyword Driven Testing
15. Support Parallel Execution
16. Interface with External APIs such as Product Server / Other
17. Scheduling Your Test Suite
18. Interfacing Continuous Integration
19. Support Mobile Apps
20. Support Desktop Apps
Reporting System
כלי דיווח למשתמשים, מריצי הבדיקות האוטומטיות וכן המנהלים אשר ירצו לראות את מצב הריצה הנוכחית (אשר רצה למשל כל הלילה), המערכת תציג דיווח עילי לעומת הלוגים (שמיועדים למפתחי האוטומציה), בה מיוצגים אלמנטים גרפיים על דוח HTML, דוגמא לדוח כזה:
http://blog.yoniflenner.net/Samples/ExtentReports
ניתן לגשת גם לדוחות היסטוריים על פי פילוח וסיווג של תאריכי ריצה
Working with External Files (Configuration)
ישנם פרמטרים שלא משתנים לאורך כל הריצה, כמו למשל - שם המכונה עליה מריצים את הבדיקות, כתובת ה-IP שלה , שם המשתמש והסיסמא לכניסה למערכת, כתובת האתר, נתיב\מיקום קובץ הדוח, נתיב\מיקום קבצי הדרייבר (מנוע ההרצה) וכו'
את כל הפרמטרים הללו מומלץ מאוד לשמור במקום אחד - בקובץ הגדרות שיישב בפרוייקט וממנו ניתן יהיה לקרוא נתונים מתוך הקוד
Working with Object Repository
לאלמנטים שניתן לראות באפליקציה אותה אנו בודקים יש מאפיינים, כך גם האוטומציה יודעת לזהות אותם - לפי המאפיינים שלהם. לכל אלמנט יש סט של מאפיינים, רצוי שאת המאפיינים הללו ישמרו במקום אחד - מבנה של נתונים, נקרא לו Repository ובכל פעם שנרצה לזהות אלמנט, התוכנית תיגש למבנה הזה ותשלוף ממנו את הנתונים הרצויים
Interfacing Data Base
חלק בלתי נפרד מכל מערכת של תוכנה הוא בסיס נתונים, גם לפרוייקט אוטומציה כדאי שיהיה בסיס נתונים משלו , בו נרצה לשמור פרמטרים מסויימים, למשל סיסמאות מאובטחות של משתמשים, כמובן שבשל כך, יש לכתוב תמיכה לחיבור לאותו בסיס נתונים
כמו כן, עם התשתית הזו ניתן גם להתחבר לבסיס הנתונים של המוצר ומשם לשלוף מידע בכדיי לבדוק אותו אח"כ בסט הבדיקות
Support Data Driven Testing
תמיכה ברכיב זה של Data Driven יאפשר לבצע בדיקות על שדות מסויימים תלויות נתונים. למשל שדה טקסט (סיסמא) עם אוסף של חוקים (איסור על רווח, מינימום תווים וכו'), הבדיקה הנכונה היא להכניס אל השדה את כל הפרמוטציות האפשריות שניתן להכניס באופן חוקי ובאופן לא חוקי. עדיף יהיה כי במקרה כמו זה אוסף המידע שייכנס לשדה זה יישב בקובץ חיצוני (לרוב קובץ - אקסל)
Interface with External APIs such as Product Server / Other Services
אמנם עיקר הבדיקות באוטומציה עם סלניום מתבצעות על הקליינט (הדפדפן), אך אין זה אומר שאי אפשר גם לתמוך בפרוייקט אוטומציה בצד השרת או כל שירות אחר שהמוצר הנבדק מקבל.
כאן ניתן לכתוב תמיכה לתפיסת אירועים (Events) היוצאים מן הקליינט והמתקבלים אל הקליינט מהשרת למשל
Scheduling Your Test Suite
לא תמיד נרצה להריץ את סט הבדיקות שלנו כשאנו בעבודה, יושבים אל מול המחשב. ישנה אפשרות כמובן לתזמן את ההרצות שלנו במזנים הנוחים לנו, לדוגמא - יש לנו סביבה אחת בה אנו גם מפתחים וגם מריצים את הבדיקות האוטומטיות, בזמן שאנו בעבודה נרצה לפתח, ולאחר שנלך הביתה נרצה שהמכונה תתחיל להריץ את הבדיקות בתזמון מסויים