- הכיסוי שלה, כמובן. 80% זה נחשב מוצלח כיוון שאי-אפשר 100% אוטומציה (לא הכל שווה את המאמץ).
- הבדיקות שהיא עושה ולא התבצעו עד שהיא הגיעה.
- הזמן של הבדיקות הידניות שנחסך עקב האוטומציה.
- באגים שנמצאו במערכת (וכמה התחמקו, בעיקר מאלה שחשבנו שכיסינו).
- התחזוקה קטנה.
- מספר הבאגים של האוטומציה נמוך.
- יציבות, מינימום downtime.
---------------------------------------------------------------------------------------------------------------
חישוב ROI:
*גרסת בטא.
אם אתם רוצים משהו מקצועי יותר - בבקשה: https://sourceforge.net/projects/ta-roi
נניח שמדובר באוטומציה של תכולה מסוימת בתקופה מסוימת T:
*הכל בימי אדם
השקעה:
מחיר הפיתוח: זמן פיתוח הקוד של האוטומציה בימים * ממוצע המשכורות של המתכנתים ליום.
מחיר הכלים: רישיונות, תמיכה.
זמן אנליזה של כל הרצה * מספר ההרצות * משכורת ממוצעת של האנליסט.
downtime ותחזוקה: סך ימי התיקון של כל המעורבים בו * משכורת ממוצעת של אנשי האוטומציה המתקנים ליום + סך ימי הבדיקות שבודקים הריצו בצורה ידנית כתחליף לאוטומציה * משכורת ממוצעת של בודק ליום)
רווח:
לחשב את ימי ההרצה של כל בדיקה מתוך הבדיקות הרלוונטיות שהורצו בצורה ידנית וכעת מגובים באוטומציה.
מספר ההרצות: כמה פעמים כל טסט ידני היה מורץ בתקופה T (לפי: מספר הרצות פר סייקל בדיקות * כל הסייקלים * מספר קונפיגורציות / תשתיות ) * ימי ההרצה * משכורת ממוצעת של בודק ליום.
מכאן נותר להחסיר את הרווח מההשקעה.
אבל זה לא באמת כל הסיפור. אם האוטומציה שלכם בעלת כיסוי נרחב ובאמת מגלה בעיות מהר, ובחלקן בעיות שלא היו מתגלות בידני אז הרווחנו:
מהירות של מציאת הבעיות והוזלה של פתירתן.
את העובדה שקיים פחות תסכול של בודקים שהריצו את אותם אימותים שוב ושוב.
ביטחון במערכת.
יש בדיקות שלמשל היינו מריצים פעם - פעמיים בגרסה בגלל ניהול סיכונים אל מול זמן מוגבל. עכשיו אפשר להריץ את אותה בדיקה הרבה יותר פעמים.
*תשתיות - מערכות הפעלה, דפדפנים, טלפונים וכד'
---------------------------------------------------------------------------------------------------------------
מתי להריץ אוטומציה?
- כל ה-continuous למיניהם (CI, CD)
- כל לילה
- בזמן הרמת עומס על המערכת
- כשיש צורך כזה או אחר, נניח תיקון עמוק
---------------------------------------------------------------------------------------------------------------
אז יש לנו אוטומציה של הרגרסיות, מה עכשיו?
- להתחיל לכתוב קוד עם פיתוח הפיצ'ר וכך תהיה לנו אוטומציה לפרוגרסיה.
- לחשוב לכיוון של בדיקות אמינות, כמו למשל "כאוס מונקי".
- להריץ בדיקות מסוימות בפרודקשין בכדי לוודא שהכל טוב.
---------------------------------------------------------------------------------------------------------------
מה יישאר לעולם ידני?
business flows, user stories.
אקספלורטורי טסטינג.
יוזביליות (UX).
סיכום:
בימנו, עידן ה-Continuous Integration, Continuous Delivery וכמובן Continuous Deployment האוטומציה דרושה מתמיד. אני חושב שיש הרבה פוטנציאל לאוטומציה והיא יכולה להקל עלנו בכך שנתרכז בבדיקות החשובות יותר, כאלה שהיא לא תמצא - היגיון עסקי, "חור" בדרישות וכד'.
אבל גם מאוד חשוב לעשות את התהליך בשום שכל, לתכנן לפי הצרכים הספציפיים שלנו (תלוי הקשר) ואיפה שאפשר להתקדם בצעדים קטנים ולפי חשיבות.
אין תגובות:
הוסף רשומת תגובה