בדיקות אוטומטיות 2020 והלאה - מגמות ושינויים
מאת:
ליאור כץ, 1.9.20, 15:14
עולם הבדיקות האוטומטיות כיום מחולק לשכבות. על היתרונות של בדיקה דרך API, ועל עולם ה-UI המחולק ל-3 שכבות: כשהשכבה הכי מדוברת היא Code less.
הצלחתי לעשות לי סדר בראש בקונספט של הבדיקות האוטומטיות. אשתף אתכם בתובנות. מבטיח לא לקדוח, רק עושה סדר וזהו.
אני רואה את עולם הבדיקות האוטומטיות כיום מחולק לכמה שכבות. אז בואו נתחיל מהשכבה העליונה של הבדיקות האוטומטיות ונצלול לעומק
.
יתרונות אדירים לבדיקה דרך API
את החלוקה הראשונה אני עושה בין בדיקות
UI לבדיקות
API. האמת שכבר שנים מדברים על זה, אבל השנה זה כבר נהיה מאוד ברור
. אין ספק, שמי שיכול לבדוק את המערכת שלו דרך ה-
API בצורה אוטומטית משיג יתרונות גדולים. כמה מהיתרונות הבולטים יותר בעיני:
זמן פיתוח קצר,
תחזוקה הרבה יותר קלה,
יכולת הרצה של הרבה מאוד בדיקות,
קלות הפיתוח והתחזוקה,
כמעט (דגש על הכמעט) לא צריך קוד.
יש הרבה מאוד בודקים ידניים, שמפתחים, מריצים ומתחזקים בדיקות אוטומטיות ל-
API והרבה ממפתחי הבדיקות האוטומטיות מפתחים בדיקות ל-
API ולא בעולם ה-
UI.
יש לזה גם כמה חסרונות דוגמת:
זה לא הרכיב בו ה-
End User משתמש,
יכול להיות שלא כל הפונקציונליות של המערכת חשופה ל
API,
כשהעסק מסתבך (ה-
Business Process) זה יכול להפוך לסיוט\בלתי אפשרי לעבוד עם
API, ועוד
.
המחשת ההבדלים בין עולם ה-
API ל-
UI:
בדיקות מסורתיות בעולם ה-UI
אני מחלק את עולם ה-
UI ל-3 שכבות:
Open Source בשכבה העליונה,
Framework tools בתווך ו-
Code less בתחתית.
OS - Open Source - זו השכבה העליונה. לדוגמא הסלניום הסטנדרטי (סטטיסטית לדעתי רוב החברות, שמפתחות בדיקות אוטומטיות לעולם ה-
UI, משתמשות בשכבה הזו), פיתוח קוד לכל דבר בכל שפת פיתוח נורמלית אפשרית (
Java, C#, Python ועוד) בעיקר לסביבות ה-
web.
החידוש היום הוא סלניום 4 שעומד בסטנדרט של
w3c ועוד כמה פיצ'רים מגניבים. השכבה הזו חינמית, דורשת אנשי פיתוח, מלאה בהצלחות וכישלונות מוכחים. בקיצור, יש הרבה ניסיון ומי שעובד נכון, ויודע גם להסתכל על
ROI (החזר השקעה) בסופו של דבר מצליח.
Framework Tools - נושא קצת יותר חדשני. כלים כמו
Pupetter,
Cypress,
Playwright, שהם כלים היושבים ב-
DOM ועובדים מהר מאוד. בפיתוח ב-
JS פחות נשברים בהרצות. הכלים עטופים ומהסיבה הזאת קלים לפיתוח ו-
Debug.
בקיצור, זו שכבה מאד מעניינת, שאני בטוח, שככל שיעבור הזמן נשמע עליה יותר ויותר בעולם עם הצלחות לא מעטות, חיבור טבעי ל-
CD CI וחינמיים.
Pupetterו
Playwrigh-הם פתרונות מאוד מעניינים המגיעים מבית גוגל ומיקרוסופט. כך, שכנראה עוד נשמע עליהם הרבה.
Code Less - אולי השכבה הכי מדוברת – בודקים ידניים, שיידעו ויוכלו לכתוב בדיקות אוטומטיות, לתחזק ולהריץ. בקיצור, חלומו של כל מנהל בדיקות / פיתוח. כלים כמו :
Test Craft, Testim.io הם כלי
Code Less, שהביאו שביעות רצון גבוהה ללקוחות מרוצים.
כמובן, שהכלים האלו מכילים את כל מה שכלי אוטומטי ב-2020 צריך להכיל:
Cloud Based Parameters,
Data Driven Cloud based,
Connection to CI/CD ועוד.
לסיכום. ההמלצה לזכור את החלוקה לשכבות, מול עובדים, שותפים, ולקוחות, אולי תעשה את חייכם קלים יותר. חוץ מזה שברור, שכל הפתרונות האלה קשורים ל-
ROI, שאנו מחפשים מבדיקות אוטומטיות - הכל מתקשר להכל
.
מאת:
ליאור כץ, ספטמבר 2020.
CTO,
מטריקס בדיקות ואוטומציה