התסריט אינו מופיע על המסך
הוא אומר "אני מתחבר", לא "אני מקליד בשדה מס' 3". הטכניקה פועלת באמצעות אובייקט ייעודי לכל דף.
BDD ו-Gherkin
BDD אינו תחביר, אלא שיחה. נתון / כאשר / אז יש לזה ערך רק אם מישהו מהתחום באמת יבדוק את מה שנכתב — אחרת זה פשוט קוד מילולי יותר, שנכתב פעמיים.
לקבוע פגישהמה זה פותר
ברוב הפרויקטים, מקרי הבדיקה מאוחסנים בכלי שרק צוות הבדיקה פותח. הצד העסקי מאשר את המפרט, צוות הבדיקה בודק משהו אחר, והפער מתגלה בשלב הקבלה — או בסביבת הייצור.
ה-Gherkin מעביר את השיחה לשלב מוקדם יותר: מכיוון שהמסעדה פועלת במתכונת "Family Days", כשאני נכנס לדף הבית, תפריט הילדים מופיע אחרי הקטגוריה "תפריטים". משפט זה נקרא על ידי מנהל קמפיין, מתוקן על ידו ומאושר על ידו. זהו כל הערך שבדבר — והוא הולך לאיבוד אם המשפט נכתב על ידי מפתח עבור מפתח.
המלכודת
זהו הקושי שנתקלנו בו באופן אישי, והוא אינו נובע מהכלי עצמו.
תסריט ה-Gherkin נכתב, נבדק ונאשר. הבדיקה האוטומטית, לעומת זאת, נכתבת במקום אחר — קובץ תסריט, סקריפט או קובץ תצורה. שניהם מתארים את אותה בדיקה. בשינוי הראשון, האחד מתעדכן והשני לא ; ומאותו רגע, כבר אף אחד לא יודע איזה מהם הוא המקור המהימן.
הכלל שאנו נוקטים: מקור יחיד, קובץ הפעלה. ה-Gherkin אינו מתעד את הבדיקה, הוא הוא הבדיקה — כל משפט קשור לשלב ביצוע מסוים. אם לא ניתן לקשר ביניהם, עדיף להניח שמדובר בבדיקה טכנית ובמפרט נפרד, מאשר לנהל שתי גרסאות שונות.
בפרויקט אמיתי, השתמשנו בבסיס של 92 תסריטים שנכתבו בכתב יד בצרפתית, המתארות במדויק את מה שהאוטומט בודק — נוכחות, היעדרות, סדר. לא היה צורך לכתוב אותן מחדש, אלא לקשר אותן לביצוע.
מודל אובייקטי הדף
הוא אומר "אני מתחבר", לא "אני מקליד בשדה מס' 3". הטכניקה פועלת באמצעות אובייקט ייעודי לכל דף.
כאשר מסך עובר עיצוב מחדש, מתקנים את האובייקט המתאים. חמישים התסריטים המשתמשים בו ממשיכים לפעול כרגיל.
ההיבט הטכני לא צריך לפגוע בקריאה: זה מה שמאפשר לקרוא את התסריט מחדש כעבור שנתיים.
ללא חלוקה זו, בסיס אוטומטי הולך וגדל ואז מתמוטט: כל שינוי גורם לכישלון של שלושים בדיקות, הצוות מבלה את השבועות בתיקונים, והאוטומציה ננטשת בסופו של דבר מבלי שאף אחד יעז לומר זאת.
שאלות ישירות
לא. ל-BDD יש עלות — כתיבת משפטים שעוברים הגהה על ידי אנשי העסק, תחזוקת שלבי הביצוע — ועלות זו מוצדקת רק אם אנשי העסק באמת משתתפים בתהליך. אם אף אחד לא מגיה את התסריטים, בדיקה טכנית כהגדרתה היא כנה יותר וזולה יותר. אנו מציינים זאת לפני שמתחילים.
מי שמדבר בשפת צוות הפיתוח שלכם — Java, .NET, Python, JavaScript. בחירת הכלי היא משנית: מה שקובע את ההצלחה הוא איכות שלבי הביצוע והקפדה על אוצר המילים.
על ידי הימנעות משימוש במונחים טכניים במשפטים, הגבלת מספר השלבים בכל תרחיש, ודחיית תרחישים המתארים רצף של מסכים במקום כלל עסקי. תרחיש המונה חמש עשרה שורות כמעט תמיד חולק בצורה לא נכונה.
כן, וזה אפילו השימוש הטוב ביותר בו: הוא מחליף את גיליון האקסל של המתכון במשהו שניתן להריץ. בתנאי שמקבלים את הכלל הבסיסי — מקור אמת אחד בלבד. Gherkin המתעד בדיקה שנכתבה במקום אחר הופך שוב לגיליון אקסל, רק שברירי יותר.
ביקורת ללא התחייבות על תהליך הבדיקות שלכם, כדי לדעת היכן אתם עומדים באמת.
לקבוע פגישה