Google Apps Script:
כתיבת בדיקות

איך לעשות:

למרות שאין ל-Google Apps Script מסגרת בדיקות מובנית כמו בסביבות תכנות אחרות, עדיין ניתן לכתוב ולהפעיל בדיקות על ידי ניצול פונקציות GAS פשוטות או אינטגרציה של ספריות בדיקות חיצוניות כמו QUnit. הנה דוגמה בסיסית באמצעות פונקציה פשוטה של GAS לבדוק פונקציה אחרת בסקריפט שלכם:

function add(a, b) {
  return a + b;
}

function testAdd() {
  var result = add(2, 3);
  if (result !== 5) {
    throw new Error("Test failed: add(2, 3) should be 5, but was " + result);
  } else {
    Logger.log("Test passed!");
  }
}

הפעלת testAdd() תתעד את “Test passed!” אם הפונקציה add פועלת כראוי, או תזרוק שגיאה אם לא. לגישה מתקדמת יותר, אינטגרציה של QUnit עם Google Apps Script כרוכה בכמה צעדים נוספים אך מציעה סביבת בדיקות עוצמתית. הקמת בדיקות QUnit נראית כך:

  1. כלול את ספריית QUnit בפרויקט שלך.
  2. צור קובץ HTML של בדיקות להרצת הבדיקות של QUnit.
  3. כתוב מקרי בדיקה באמצעות תחביר QUnit.

הנה דוגמה באמצעות QUnit:

// כלול את QUnit על ידי קישור אליו בקובץ HTML שמשמש להרצת הבדיקות שלך

QUnit.test("בדיקת הפונקציה add", function (assert) {
  var result = add(2, 3);
  assert.equal(result, 5, "add(2, 3) אמורה להחזיר 5");
});

כדי לראות את התוצאות, פתח את קובץ ה-HTML בעורך הסקריפטים של GAS או פרסם אותו כיישום וב.

צלילה עמוקה

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

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

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

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