ארכיון יומי: 26 מרץ, 2009

מלפפון למנהלים

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

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

המבנה המוסכם של Cucumber  נקרא Buisiness Readdable DSL כאשר הפירוש של DSL הוא Domain Specific Language. הגישה של DSL אומרת שבמקום שתהיה לנו צורה כללית לתאר כל דבר, אנחנו יוצרים מבנה לתאר ולעבוד עם דברים ספציפיים.

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

Cucumber מתקשר איתנו דרך טקסט ובעזרת מצבים שונים. הרעון של התקשורת הוא בתאור 3 מצבים עיקריים אשר נבחרו בקפידה:

  1. Given – התחלת הפעולה. בד"כ נועד בשביל לאתחל דברים, כך שלמעט למשל משתמש וסיסמה, לא נהוג לבצע פעולות שדורשות התערבות המשתמש.
  2. When – תאור הפעולות עצמם שאנחנו רוצם לבדוק. כאן כבר אפשר לספק התערבות משתמש, ובעצם כל מה שאנחנו רוצים לקבל בשביל שהבדיקה שלנו תעבוד.
  3. Then – הסיכום של הפעולה ובדיקה בעצם האם השגנו את המטרה. כלומר האם הפעולות של Given+When סיפקו את התוצאה הרצויה (או לא).

לעוד מידע ניתן לגשת לאתר הפרויקט או ב GitHub.

דוגמאות של שימוש בכלי ניתן למצוא כאן.