Research Article

PreventativeTestPro: מסגרת בדיקות היברידית ניתנת להרחבה המשתמשת ביכולת תצפית ובינה מלאכותית גנרטיבית להנדסת איכות תוכנה פרואקטיבית

DOI:

10.3791/69316

March 24th, 2026

In This Article

Summary

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

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

Abstract

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

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

המערכת מאפשרת ביצוע בדיקות מקביל באמצעות ניתוח לוגים מיידי מונחה בינה מלאכותית, ומטפחת לולאת משוב רציפה בין פעולות לבדיקות. הוא אומת במספר תרחישים ארגוניים, כולל פלטפורמות SaaS מבוססות מיקרו-שירותים ואקוסיסטמות SAP BTP. ממצאים אמפיריים מארבע פריסות ייצור וקבוצת בטא של 49 מהנדסים מצביעים על ירידה של עד 30% בזמן הממוצע, עמידה ביותר מ-95% ב-SLA, ושיפורים משמעותיים הן בכיסוי הבדיקות והן במעקב אחר פגמים. החיבור הקל עם כלים סטנדרטיים בתעשייה ממחיש את יכולת ה-plug-and-play שלו.

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

Introduction

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

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

מתודולוגיית אג'ייל מובילה לשינויים מהירים המיושמים בייצור, מה שמוביל למספר רב של בעיות תמיכה עקב משוב. ניהול קשיי תמיכה הוא אחריות משמעותית וקריטית, כפי שניתן לראות בעובדה ש-68% מהצרכנים מביעים נכונות לשלם פרמיה עבור מוצרים ושירותים מעסק הידוע במתן שירות לקוחות מצוין6. לפי מחקר, 86% מהלקוחות שמקבלים שירות לקוחות מצוין נוטים יותר להפוך לתומכים נאמנים של העסקבטווח הארוך. לפי מחקר, 89% מהקונים נוטים לבצע רכישות חוזרות אםהייתה להם חוויית שירות לקוחות חיובית. לפי מחקר, 93% מהלקוחות נוטים לבצע רכישות חוזרות בחברות שמספקות שירות לקוחות יוצא דופן9. כדי לספק שירות לקוחות מצוין, חשוב לפתור במהירות וביעילות בקשות תמיכה ברמת איכות גבוהה. אלמנט האיכות הוא קריטי כאשר שואפים לאספקה מהירה יותר, שכן עלות פתרון בעיות התמיכה עולה עם הזמן ורמת הסלמה10.

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

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

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

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

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

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

בוגטינובסקי ואח' 18 מציגים את CLog, רשת עצבית מודעת להקשר, טכניקת אשכולות שנועדה להתמודד עם נתוני יומן לא יציבים וכיסוי כשל לא מספק על ידי זיהוי תהליכים משנה משמעותיים וזיהוי כשלים במעברי הקשר פתאומיים. באסבי ואח' מציעים מתודולוגיה מבוססת יומן ליצירת מקרי בדיקה אנונימיים, החיזוי רצפי משתמשים לשכפול ללא נתונים אישיים; עם זאת, שינויים ברמת החפיפה ורמת הלוגר ממשיכים להיות מגבלות משמעותיות. לי וקאנג20 מציעים ליישם ארכיטקטורת בדיקה לבדיקות קו מוצרי תוכנה לשיפור התצפית והשליטה בנוכחות מנגנוני שונות. מודל QEX21 משלב נתונים ממקורות בדיקה שונים כדי לספק מידע ברור ושימושי בזמן ביצוע הבדיקות. לאל וקומאר,בן 22 , מדגישים את החשיבות של היכולת לראות ולשלוט בבדיקות חכמות. הם מציעים להשתמש באוטומציה מבוססת בינה מלאכותית כדי להפוך את הבדיקות למהירות, יעילות ויסודיות יותר. בריאנד ואח' 23 ממחישים את יישום תכנות מונחה היבט ב-Java לצורך כלים יעילים של חוזים ואינווריאנטים, בעוד שבראל ואופאט24 מדגישים את בעיית הטענות השגויות במבחנים שמובילות ל"מבחנים עיוורים" שאינם מזהים התנהגות שגויה.

Rott25 מדבר על כך שהניתוחים והוויזואליזציות המודרניות בתוך Teamscale מדגישים את תהליך בדיקות התוכנה בכך שהם מאפשרים לבודקים לגשת לפריטים המעובדים הספציפיים לבעיות ולמצב הנדרש. קולינס ולוסנה26 מדגישים את החשיבות של הרצת הרבה בדיקות בצינור ה-CI לפני פריסה לייצור. הם אומרים שבדיקות שכבתיות הן דרך טובה לוודא שהמוצר איכותי ולהפחית בעיות תמיכה.

BugSwarm27 מציע שיטה לבחינת כישלונות בבדיקות CI על ידי קישור שורשי הגורמים לפתרונות שלהם. דודילה ולטיה, 28 , בוחנים שיטות בדיקה של קופסה לבנה וקופסה שחורה, ומציעים אסטרטגיה מגובשת להפחתת מאמצי ניפוי שגיאות במהלך תהליך הפיתוח. פושיהארה ואח' חקרו "ריחות בדיקה" ביישומי פייתון, וניתחו את התקדמותם באמצעות שינויים בקוד לשיפור ניהול קוד הבדיקה. SUPERNOVA30 היא מערכת לבחירת בדיקות ומניעת תקלות המשתמשות בנתונים, אוטומציה ולמידת מכונה לשיפור אבטחת האיכות. Araujo31 מציע אסטרטגיית תחזוקה המתמקדת בהזדקנות תוכנה. אסטרטגיה זו משתמשת בתחזוקה מתקנת כאשר שינויים בקוד אפשריים ובאסטרטגיות מניעה כאשר שינויים עלולים לגרום להפסקת המערכת, מה שמפחית את מספר תקלות השירות. אנדרו ואח' 32 חוקרים בדיקות מוטציות מקביליות, תהליך שבו מחלקות עוברות מוטציה, נבדקת ונטענות מחדש שוב ושוב עד שכל הווריאנטים מוערכות. Dunn ואחרים מציעים מדדי פגיעויות אבטחה שמקצים משקלים לרכיבים כדי להדגיש את חשיבות הבדיקות היסודיות. לבסוף, Huo ואחרים משתמשים באינדקס קבוצות רציף כדי למצוא מיקומי פגמים ולאשר בעיות. דבר זה מראה שסיבות שורשיות קשורות לעיתים קרובות לרוב מקרי הבדיקה הכושלים ביישומי תוכנה.

Access restricted. Please log in or start a trial to view this content.

Protocol

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

ארכיטקטורת המערכת וסיכום האב-טיפוס:

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

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

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

figure-protocol-2
איור 2: ארכיטקטורת מערכת של המערכת המוצעת עם אוסף ומנתח נתוני תצפיתיות, שכבת אינטליגנציה מונחית GenAI, ומנוע עיבוד וביצוע בדיקות. איור זה ממחיש את הארכיטקטורה הפנימית של מערכת PreventativeTestPro, המחולקת לשלוש שכבות: שכבת אוסף התצפית מאגדת נתונים ממקורות שונים, כולל אירועי דפדפן, יומנים, קבצי HAR, יומני שרת, מדדים ומעקבים. שכבת הבינה המלאכותית הגנרטיבית משתמשת בנתונים אלו לביצוע ניתוח שורש הבעיה, תעדף אנומליות, ויצירת מקרים אוטומטיים (UI, API, מדריך) ותיעוד באמצעות מודלי שפה גדולה. מודול BHARAMARI גם מקים מיטות ניסוי חדשות. מנוע תזמור וביצוע בדיקות ממפה אי-התאמות למקרי בדיקה, מבצע בדיקות במקביל, מעריך תוצאות ומודיע לצוותי הנדסה, מערכות כרטיסים וללוחות מחוונים לפיקוח בזמן אמת ומעקב אחר פתרונות. אנא לחצו כאן כדי לצפות בגרסה מוגדלת של הדמות הזו.

מודול איסוף ומנתח נתוני תצפית משמש כמערכת חישה של הפלטפורמה, ואוסף באופן רציף נתונים מהיישום הנבחן בקנה מידה גדול, עם היבטים מרובים. במקרה של ניטור בצד הקדמי, סוכני ניטור סינתטיים מופעלים לניטור אירועים בצד הדפדפן, כגון מבני מודל אובייקט מסמכים (DOM), פעולות משתמש כגון קליקים, הוברים וקלטים, וקבצי HAR הלוכדים מידע על בקשות ותגובה ברשת וב-API. PreventativeTestPro מובנה גם ב-OBSERVER כדי להגדיל את יכולות הדפדפנים. ניטור בצד האחורי מתמקד בניתוח לוגים, שבו מבוקשים ומעובדים מידע על תצפית בצד השרת, הכולל יומני יישומים, הודעות שגיאות, הודעות מידע וניפוי שגיאות, יומני מעקב וחריגות, מדדי ביצועים כמו זמני תגובה, ומעקב באמצעות טכנולוגיות כמו OpenTelemetry או New Relic. המערכת תעבוד עם סוכנים סינתטיים המדמים תנועת משתמשים ואינטראקציה, ואוספי יומנים דוחסים נתונים נכנסים בזמן אמת. הנתונים שנאספו מנורמלים לפורמטים מובנים ומועברים ליחידות עיבוד אחרות לניתוח נוסף.

המהות של PreventativeTestPro היא שכבת אינטליגנציה מונחית GenAI המשתמשת במודלים גדולים (LLMs) כמו GPT לקריאה וניתוח נתוני תצפית והקשר ויצירת תגובות. המודול מבצע ניתוח סיבת שורש: תהליך של פירוש לוגי סיבת שורש ומעקבים כדי להסביר תקלות טכניות במונחים שניתן להבין, כמו NullPointerException על שורת קוד מסוימת והסיבה המשוערת לבעיה, כמו משתנה לא מאותחל. ביצירת מקרי בדיקה, המערכת משתמשת בבדיקות אוטומטיות שנוצרות על ידי המרת דפוסי חריגות או רצף אירועים לסקריפטי בדיקה ניתנים להרצה, למשל בדיקות Selenium או API, אך גם מייצרת נהלי בדיקה קריאים לאדם שצוות אבטחת האיכות יכול להריץ. בדיקות ה-API התפתחו באמצעות המרה של HAR ויומני עקבות לרצף של בקשות API עם ההצהרות הצפויות, וכל מקרי הבדיקה שנוצרו משתפרים עוד יותר עם מיטות בדיקה יעילות על ידי אינטגרציה עם BHRAMARI. שיפורים נוספים, שיפורים בכיסוי הבדיקות והזדמנויות לאינטגרציה של CI/CD מוצעים במערכת ההמלצה, בהתאם להתנהגות המערכת שנבדקה. מנוע הבינה המלאכותית משתמש בנתוני תצפית מובנית באמצעות הנדסת הנחיה והעשרת הקשר כדי להציג את הקשר היומן עם תבניות פרומפט שמעבירות שאילתות מובנות למודל השפה הגדולה, ולבסוף מייצר פלט בצורה פונקציונלית, כגון קטעי קוד, מפרטי מקרים ותיעוד בשפה טבעית.

מודול מנוע ה-Test Orchestration and Execution מטפל בעדיפות בדיקות, תזמון וביצוע, ומאפשר אימות אוטומטי בהתבסס על פרטי כיסוי שינויי קוד, תגיות ומיפוי אנומליה. המיפוי והבחירה של המבחן כוללים קישור אנומליות במפות או דפוסי אינסטרומנטציה למקרי בדיקה ידועים באמצעות מנוע כללי מיפוי, ולאחר מכן הרצת מקרי הבדיקה בהתאם למיפוי שנקבע. התכונות של ביצוע בדיקות מקביל מאפשרות להריץ סוגים רבים של בדיקות בו-זמנית, כגון בדיקות פונקציונליות, ביצועיות או אבטחה בסביבות שונות ותיאום השימוש בסלניום, JMeter ו-ZAP ככלים בצינורות האוטומציה. מימוש לולאת המשוב מוודא שתוצאות הביצוע מתועדות, ובמקרה של כישלון בדיקה, השינויים מועברים למערכות התמיכה, כולל Jira ו-Azure DevOps, כדי לעקוב ולפתור אותן.

השערה:

H1 (יעילות תפעולית): נטען כי שילוב נתוני תצפית ואינטליגנציה מונחית בינה מלאכותית ישפר את המדדים התפעוליים, במיוחד על ידי הפחתת זמן הפתרון הממוצע (H1a), זמן הממוצע לניתוח (H1b), הזמן הממוצע לזיהוי בעיות ייצור (H1c), והזמן הממוצע לפריסת תיקונים בייצור (H1d). שינויים אלה אמורים להקל על עמידה בדרישות הסכם רמת השירות (SLA) (H1e) על ידי האצת גילוי, ניתוח ופריסה תוך שמירה על זמן השבתה של המערכת למינימום.

H2 (יעילות בדיקות): גם מאמינים כי יעילות בדיקות התוכנה תשתפר עם כיסוי בדיקות מוגבר (H2a), הרצת מקרי בדיקה במקביל (H2b) ותעדוף בדיקות חכם (H2c). המלצות שנוצרו על ידי בינה מלאכותית (H2d) צפויות גם הן לסייע הן בבדיקות והן בתהליכי עבודה תפעוליים. זה יסייע לאתר באגים מהר יותר, להאיץ את לולאות המשוב ולתמוך בפרקטיקות אבטחת איכות שהן מונעות וארוכות טווח.

היקף וקהל:

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

הגדרת סביבה:

קובץ משלים 1 מכיל תיאור שלב אחר שלב ותוכנית הנדרשות לתקשורת עם PreventativeTestPro. זה כולל הוראות להתקנת הסביבה הנדרשת, כיצד להפעיל ולהפסיק את שירותי הכלי, והסבר ברור על השימוש הבסיסי בכלי. לקבלת תיעוד מפורט יותר, יחד עם הוראות לשימוש בכלים מתקדמים, הוראות הגדרה ופרטים ארגוניים נוספים, עיינו במקורות הרשמיים ב-GitHub המוקדשים לפרויקט: דף הוויקי הספציפי במיקום https://github.com/sohambpatel/PreventativeTests/wiki וה-README הראשי ב-https://github.com/sohambpatel/PreventativeTests?tab=readme-ov-file/readme.

קלטים לדוגמה:

קבצי הקלט לדוגמה נמצאים במאגר GitHub: https://github.com/sohambpatel/PreventativeTests/tree/main/preventativetestframework/Inputs. המסגרת יכולה להריץ את מקרי הבדיקה והנתונים המוגדרים מראש של הקבצים הללו מיד. הם משמשים כקלטי ייחוס לבדיקת הגדרת הסביבה ולקבלת אותן תוצאות המתוארות בפרוטוקול זה.

פלטים לדוגמה:

מאגר GitHub (https://github.com/sohambpatel/PreventativeTests/tree/main/preventativetestframework/SampleOutputs) מכיל דגימות קונקרטיות של נתוני הפלט של מסגרת הבדיקה המונעת בפורמט גולמי. באמצעות קבצים אלו, המשתמשים יכולים לצפות ישירות בפריסה ובפרטים של הדוחות והמדדים שנוצרו, ולהראות את התוצאות שהכלי השיג במהלך פעולתו. מדריך זה רלוונטי להכרת צינור הנתונים ולאישור התנהגות המסגרת הצפויה בעת שחזור תהליך הניסוי.

אבטיפוס ביצוע:

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

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

figure-protocol-3
איור 3: ממשק משתמש 1 של המערכת. איור זה מציג את ממשק המשתמש PreventativeTestPro, שמאפשר לבחור מתוך חמש דרכים שונות לבצע בדיקות מונעות: 1. בדיקות מונעות, ביצוע מקביל: התחל בדיקות, 2. בדיקות מונעות, סיום חבילת בדיקות המבוססות על ניטור אפליקציות סינתטיות, 3. בדיקות מונעות, יצירת מקרי בדיקה ידניים באמצעות GenAI, 4. בדיקות מונעות, יצירת מקרי בדיקה אוטומטיים באמצעות GenAI, 5. בדיקות מונעות, ניתוח שורש הבעיה באמצעות GenAI. ניתן לבחור רק אפשרות אחת בכל פעם. העיצוב המודולרי מקל על ביצוע בדיקות מונעות ומוסיף יצירת בדיקות ואבחון מבוססי בינה מלאכותית. אנא לחצו כאן כדי לצפות בגרסה מוגדלת של הדמות הזו.

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

figure-protocol-4
איור 4: ממשק משתמש 2 של המערכת. איור זה מציג את מצב הביצוע המקביל של מסגרת PreventativeTestPro. המשתמש מפרט את כתובת ה-URL של יישום היעד ואת הנתיב לקובץ תכונות המכיל פרטי קונפיגורציה. האפשרויות כוללות Start Testing (להרצת בדיקות פונקציונליות, אבטחה וביצועים במקביל ורישום היומן), Stop Testing (לעצירת ביצוע), ו-Get Recommendation (לקבלת תובנות מבוססות בינה מלאכותית מלוגים ומדדים). אנא לחצו כאן כדי לצפות בגרסה מוגדלת של הדמות הזו.

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

figure-protocol-5
איור 5: ממשק משתמש 3 של המערכת. תרשים זה מראה כיצד לתעדף חבילת בדיקות במסגרת PreventativeTestPro באמצעות פלטי ניטור סינתטי. המשתמש מקליד את הנתיב לקובץ הפלט של המעקב, את נתיב ה-JSON לקבלת חריגים/שגיאות, ואת הנתיב למאגר הבדיקה (לא מקוון). אפשרויות Get class/method name ו-Get Test Cases יכולות לשמש כדי להפוך אנומליות מיפוי למקרי בדיקה שניתן להריץ. זה מבטיח שבעיות בזמן ריצה ייכללו בתהליך הבדיקה. אנא לחצו כאן כדי לצפות בגרסה מוגדלת של הדמות הזו.

איור 6 מציג את ממשק יצירת מקרים ידניים של PreventativeTestPro. בשלב זה, המשתמש אומר לתוכנית היכן למצוא את קובץ ה-stack trace שמציג את האנומליה על ידי מתן הנתיב האבסולוטי לקובץ ה-stack trace והנתיב לקובץ מאפייני הקונפיגורציה. לאחר הגדרת הקלטים, ניתן להריץ את אפשרות יצירת מקרים מבחנים, שתהפוך את האנומליה למקרי בדיקה ידניים מובנים. זה מבטיח ששגיאות בזמן ריצה שקרו בעבר תמיד ייכללו בתהליך הבדיקה. המסגרת מקלה על יצירת מקרי בדיקה על ידי אוטומציה של התהליך. זה מפחית את העבודה הידנית, משפר את כיסוי הבדיקות והופך את הבדיקות לאמינות יותר, ומונע את אותה בעיה מלחזור. שלב זה הוא קשר חשוב מאוד בין מציאת בעיות לבין הבטחת איכות טובה לפני שזה קורה.

figure-protocol-6
איור 6: ממשק משתמש 3 של המערכת. איור זה מציג את ממשק יצירת מקרי הבדיקה של PreventativeTestPro. היא הופכת מעקבי מחסנית אנומליה למקרי בדיקה ידניים ב-Behavior Driven Development (BDD) שניתן להשתמש בהם. המשתמש נותן את הנתיבים לקובץ ה-stack trace ולקובץ המאפיינים ואז לוחץ על "Generate Test Cases" כדי ליצור אוטומטית מקרים התואמים לכישלון שנמצא. זה מבטיח שבעיות בזמן ריצה תמיד יהפכו לבדיקות רגרסיה שניתן לחזור עליהן. אנא לחצו כאן כדי לצפות בגרסה מוגדלת של הדמות הזו.

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

figure-protocol-7
איור 7: ממשק משתמש 4 של המערכת. איור זה מציג את ממשק יצירת מקרי הבדיקה האוטומטי של PreventativeTestPro, שמייצר בדיקות שניתן להריץ באמצעות נתוני תצפיתיות. המשתמש נותן את הנתיב לקובץ המאפיינים ואת קובץ הפלט JSON של התצפית. לאחר מכן, הם לוחצים על "יצירת מקרי בדיקה אוטומטיים" כדי ליצור סקריפטים שניתן להריץ (בפורמט Selenium ו-TestNG). אנא לחצו כאן כדי לצפות בגרסה מוגדלת של הדמות הזו.

figure-protocol-8
איור 8: ממשק משתמש 5 של המערכת. איור זה מציג את ממשק המכשור האנומליה של PreventativeTestPro לניתוח סיבה שורשית (RCA). המשתמש נותן את הנתיב לקובץ המאפיינים ולקובץ trace של המחסנית, ואז בוחר RCA כדי להתחיל ניתוח מונחה בינה מלאכותית. שלב זה משנה אנומליות שזוהו לתובנות אבחנתיות מובנות, מה שמבטיח שניתן לתקן תקלות באופן שניתן לחזור עליו ובהתאם לבעיה. אנא לחצו כאן כדי לצפות בגרסה מוגדלת של הדמות הזו.

פתרון תקלות:

טבלה 1 מציגה את נקודות פתרון הבעיות החשובות ביותר שקשורות רק לקוד היישום. נקודות אלו הן דרך מהירה לזכור כיצד לתקן בעיות ברמת הקוד שמתעוררות בעת הרצת מסגרת PreventativeTestPro. תיעוד הפרויקט מספק מידע נוסף והוראות שלב אחר שלב לקוראים שמחפשים עזרה נוספת באיתור בעיות המשפיעות על הפונקציונליות הכוללת של האפליקציה. המשאב המלא ניתן לקבל מהקישור: https://github.com/sohambpatel/PreventativeTests/wiki/How-to-use%3F. הפניה נוספת זו מבטיחה שמשתמשים לא רק יתקנו בעיות קידוד אלא גם ילמדו כיצד לאבחן תקלות בפונקציות, מה שמאפשר להם להשתמש במסגרת בצורה יעילה יותר.

התנהגות שגיאהשורש הבעיהאיך לתקן?
הבקשה לא מתחילהנתיב Java אינו מוגדרבמשתנה הסביבה, הגדר את JAVA_HOME
השרת נכשל בהפעלהפורט 8080/9090 בשימוש (במיוחד בזמן שימוש ב-Docker)עדכון מיפוי פורטים של Docker
תוכן GenAI הוא אפסייתכן שהאסימון פג תוקףיצר את הטוקן ועדכן את config.properties לפני שאתה מספק אותו כקלט
מופע הדפדפן שנוצר על ידי המסגרת אינו מתחבר לרשתאו ששרת ZAP לא פועל או שהאישורים של ZAP שגוייםהפעל את ה-ZAP לפני הרצת האפליקציה, למקרה שהוא רץ והבעיה עדיין נמשכת, עדכן את פרטי ה-ZAP ב-config.properties לפני שאתה מספק את זה כקלט

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

Access restricted. Please log in or start a trial to view this content.

Results

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

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

תוצאות מחקר מקרה בתעשייה:

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

Access restricted. Please log in or start a trial to view this content.

Discussion

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

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

Access restricted. Please log in or start a trial to view this content.

Disclosures

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

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

Acknowledgements

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

המחבר מביע תודה על התמיכה ושיתוף הפעולה המשמעותיים שניתנו על ידי הארגונים הבאים לאורך מחקר. מחקרי המקרה הניסיוניים המשותפים עם חברות אלו היו קריטיים לאישור הכלי והשיטה המוצעים. תודה רבה ל-GazonTech, Lopa Engineering, Afour Technologies, QJ Technologies ו-SecureLayer7 על הענקת גישה לסביבה מעשית, תובנות טכניות ותשובות חשובות במהלך שלב הניסוי. המעורבות הפעילה שלהם שיפרה מאוד את המשמעות המעשית והשימושיות של ממצאי המחקר. המחבר מביע תודה עמוקה על מוכנותו להשתתף במחקר אקדמי ועל מחויבותו לחדשנות ולשיפור מתמשך בתחומי הנדסת תוכנה ואבטחת סייבר.

Access restricted. Please log in or start a trial to view this content.

Materials

List of materials used in this article
NameCompanyCatalog NumberComments
אפאצ'י מייבןקרן התוכנה של אפאצ'י3.9.6כלי לניהול תלות ופרויקטים לפרויקטים של Java
ChatGPT (GPT-3.5 Turbo API)OpenAIhttps://platform.openai.com/api-keysליצירת המלצות בדיקות מבוססות בינה מלאכותית מתוך יומנים, יצירת מקרי בדיקה ידניים, יצירת מקרי בדיקה אוטומטיים וקבלת ניתוח שורש הבעיה
מחשב (מכונת פיתוח/בדיקה)מחשב שולחני/נייד סטנדרטי-משמש לפיתוח, ביצוע ובדיקה של PreventativeTestPro
מרחב הדיסקים--מומלץ לפחות 10 GB של שטח דיסק פנוי ללוגים, דוחות וארטיפקטים של בדיקות
דוקרדוקר בע"מ.27 (https://docs.docker.com/desktop/setup/install/windows-install/) משמש למכולות כדי להבטיח שחזוריות בין סביבות שונות
גיטGit SCMגרסת Git 2.45.2.Windows.1מערכת בקרת גרסאות המשמשת לפיתוח ושיתוף פעולה
מאגר GitHubGitHubhttps://github.com/sohambpatel/PreventativeTestsמאגר ציבורי המכיל קוד מקור, תיעוד, מערכי נתונים ודוגמאות
גוגל כרוםגוגל140.0.7339.128הדפדפן הראשי המשמש למעקב ובדיקות סינתטיות
Javaאורקל / OpenJDK21.0.2משמש לפיתוח תוכנה והרצת PreventativeTestPro
מערכת הפעלהפלטפורמה עצמאית-הכלי עובד על כל מערכת הפעלה עם Java ו-Maven מותקנים (Windows, Linux, macOS)
OWASP ZAPקרן OWASP2.14.0כלי לסריקת אבטחה וזיהוי פגיעויות
מעבד--מומלץ ל-Intel i5 ומעלה (או שווה ערך) לביצוע מקבילי ועיבוד בינה מלאכותית
זיכרון RAM--מומלץ מינימום של 8GB RAM להרצת בדיקות ומעקב מבוסס דפדפן

References

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,
  1. A novel approach to multiple criteria based test case prioritization. Abid, R., Nadeem, A. 2017 13th International Conference on Emerging Technologies (ICET), Islamabad, Pakistan, , (2017).
  2. Khatibsyarbini, M., Isa, M. A., Jawawi, D. N., Tumeng, R. Test case prioritization approaches in regression testing: A systematic literature review. Inf Softw Technol. 93, 74-93 (2017).
  3. Enhanced weighted method for test case prioritization in regression testing using unique priority value. Ammar, A., Baharom, S., Ghani, A. A. A., Din, J. 2016 International Conference on Information Science and Security (ICISS), Pattaya, Thailand, , (1109).
  4. Using artificial bee colony for code coverage based test suite prioritization. Konsaard, P., Ramingwong, L. 2015 2nd International Conference on Information Science and Security (ICISS), Seoul, Korea, 10, Forthcoming.
  5. Rosero, R. H., Gómez, O. S., Rodríguez, G. Regression testing of database applications under an incremental software development setting. IEEE Access. 5, 18419-18428 (2017).
  6. Customer Service Expectations 2018. , Gladly. Available at: https://www.gladly.com/blog/2018-customer-service-expectations-survey/ (2018).
  7. Must-Know Customer Service Statistics. , Khoros. Available at: https://khoros.com/blog/must-know-customer-service-statistics (2025).
  8. State of the Connected Customer, 4th Ed. , Salesforce. Available at: https://c1.sfdcstatic.com/content/dam/web/en_us/www/documents/research/salesforce-state-of-the-connected-customer-4th-ed.pdf (2025).
  9. Customer Acquisition Study. , HubSpot. Available at: https://blog.hubspot.com/service/customer-acquisition-study (2025).
  10. IT Ticket Handling Best Practices. , Ivanti. Available at: https://www.ivanti.com/blog/it-ticket-handling-best-practices (2025).
  11. Patel, S., Patil, K., Chumchu, P. Quantitative data set on test prioritization and preventative tests. Mendeley Data. V2, (2023).
  12. State of Software Quality Report 2024. , Katalon. Available at: https://katalon.info/hubfs/download-content/ebook/State%20of%20Software%20Quality%20Report%202024.pdf (2025).
  13. Patel, S., Patil, K., Chumchu, P. OBSERVER: Observing Browser Synthetic Environments for Robotization, Verification, Efficiency, and Resilience. Softw Impacts. 24, 100752(2025).
  14. Patel, S., Patil, K., Chumchu, P. Comparative analysis of software solutions for preventative testing and test prioritization. Mendeley Data. V2, (2024).
  15. Intro to Synthetic Monitoring . , New Relic. Available at: https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/using-monitors/intro-synthetic-monitoring (2025).
  16. Observability Glossary. , SolarWinds. Available at: https://www.solarwinds.com/resources/it-glossary/observability (2025).
  17. Patel, S., Patil, K., Chumchu, P. BHRAMARI: Bug driven highly reusable automated model for automated test bed generation and integration. Softw Impacts. 21, 100687(2024).
  18. Failure identification from unstable log data using deep learning. Bogatinovski, J., Nedelkoski, S., Wu, L., Cardoso, J., Kao, O. 2022 22nd IEEE International Symposium on Cluster, Cloud and Internet Computing (CCGrid), Taormina, Italy, , (2022).
  19. Creating test cases for testing software using anonymized log data. U.S. Patent. , US11709764B2. USPTO (2023).
  20. Towards test architecture based software product line testing. Lee, J., Kang, S. 2014 IEEE 38th Annual Computer Software and Applications Conference (COMPSAC), Vasteras, Sweden, , (2014).
  21. QEX: Automated testing observability and QA developer experience framework. Locke, H. L., Ting Keshia, Y. K., Yu, J. C. K., Chua, H. Y. 2023 IEEE Conference on Software Testing, Verification and Validation (ICST), Dublin, Ireland, , (1109).
  22. Intelligent testing in software industry. Lal, A., Kumar, G. 2021 12th International Conference on Computing Communication and Networking Technologies (ICCCNT), Kharagpur, India, , (2021).
  23. Instrumenting contracts with aspect-oriented programming to increase observability and support debugging. Briand, L. C., Dzidek, W. J., Labiche, Y. 2005 21st IEEE International Conference on Software Maintenance (ICSM), Budapest, Hungary, , (1109).
  24. An empirical analysis of blind tests. Baral, K., Offutt, J. 2020 IEEE 13th International Conference on Software Testing, Validation and Verification (ICST), Porto, Portugal, , (1109).
  25. Rott, J. Test intelligence: How modern analyses and visualizations in Teamscale support software testing. 2022 1st International Workshop on Visualization in Testing of Hardware, Software, and Manufacturing (TestVis), Oklahoma City, OK, USA, , (2022).
  26. Collins, E. F., de Lucena, V. F. Software test automation practices in agile development environment: An industry experience report. 2012 7th International Workshop on Automation of Software Test (AST), Zurich, Switzerland, , (2012).
  27. BugSwarm: Mining and continuously growing a dataset of reproducible failures and fixes. Tomassi, D. A., Dmeiri, N., Wang, Y., Bhowmick, A., Liu, Y. C., Devan, P. T. 2019 IEEE/ACM International Conference on Software Engineering (ICSE), Montreal, Canada, , (2019).
  28. Towards combining functional requirements tests and unit tests as a preventive practice against software defects. Dudila, R., Letia, I. A. 2013 International Conference on Control Systems and Computer Science (ICCP), Sinaia, Romania, , (2013).
  29. Fushihara, Y., Aman, H., Amasaki, S., Yokogawa, T., Kawahara, M. A trend analysis of test smells in Python test code over commit history. 2023 49th Euromicro Conference on Software Engineering and Advanced Applications (SEAA), Durres, Albania, , (2023).
  30. SUPERNOVA: Automating test selection and defect prevention in AAA video games using risk-based testing and machine learning. Senchenko, A., Patterson, N., Samuel, H., Ispir, D. 2022 IEEE Conference on Software Testing, Verification and Validation (ICST), Valencia, Spain, , (2022).
  31. A software maintenance methodology: An approach applied to software aging. Araujo, J., Melo, C., Oliveira, F., Pereira, P., Matos, R. 2021 IEEE International Systems Conference (SysCon), Vancouver, BC, Canada, , Forthcoming.
  32. Mutual Automobile Insurance Company. Mutation Testing in Parallel Threads. U.S. Patent. , US11163675B1. USPTO (2021).
  33. Machine learning-based decision-making for autonomous systems communication. U.S. Patent. , US11366748B1. USPTO (2022).
  34. Use sequential set index for root cause location and problem detection. U.S. Patent. Huo, Z. P., et al. , US11645142B1. USPTO (2023).
  35. Selenium WebDriver. , Selenium. https://www.selenium.dev (2025).
  36. The Katalon Platform. , Katalon. Available from: https://katalon.com (2025).
  37. Apache JMeter. , Apache Software Foundation. Available from: https://jmeter.apache.org (2024).
  38. OWASP ZAP (Zed Attack Proxy). , OWASP Foundation. Available from: https://www.zaproxy.org/ (2025).
  39. Xray by Xpand IT. Xray - Test Management for Jira. , Xray. Available from: https://www.getxray.app (2025).
  40. Tricentis Copilot. , Tricentis. Available from: https://www.tricentis.com/products/copilot/ (2025).
  41. SmartQ Tech Products. , SmartQ Technologies. Available from: https://www.thesmartq.com/smartq-tech-products/ (2025).

Access restricted. Please log in or start a trial to view this content.

Reprints and Permissions

Request permission to reuse the text or figures of this JoVE article

Request Permission

Tags

Hybrid TestingObservability AutomationGenerative AI TestingSoftware Quality EngineeringTest OrchestrationBlack Box TestingWhite Box TestingLog AnalysisRegression CoverageAnomaly Detection

Related Articles