השלב הבא בעולם הבדיקות: ניצול של בינה מלאכותית ולימוד מכונה

עולם הבדיקות האוטומטיות מנצל אף הוא את תחום הבינה המלאכותית ולימוד המכונה כדי לשפר את הבדיקות ● זהו שלב חדש בהתפתחות עולם הבדיקות האוטומטיות, אשר מסייע לייצר בדיקות אוטומטיות יעילות, חכמות ולומדות

ליאור כץ, CTO במטריקס וטאקט בדיקות

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

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

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

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

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

אחד השימושים של טכנולוגית לימוד המכונה בעולם הבדיקות הוא לצורך זיהוי אובייקטים במהלך ריצה של בדיקה. מה הכוונה מבחינת בינה מלאכותית? נסו לדמיין אפליקציית WEB, הכוללת אובייקטים רבים כמו List boxes, כפתורים, שדות למילוי פרטים ועוד. על מנת שכלים אוטומטיים יהיו מסוגלים לזהות את האובייקטים הללו יש צורך לספק להם "מאפיינים", אך אחת מבעיות התחזוקה בבדיקות אוטומטיות היא בעיית שינוי ה"מאפיינים" בין גירסה לגירסה, או בין build ל-build.

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

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

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

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

 

הכותב הוא CTO מטריקס בדיקות ואוטומציה

תגובות

(0)

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *

אין לשלוח תגובות הכוללות דברי הסתה, דיבה, וסגנון החורג מהטעם הטוב

אירועים קרובים