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 จึงไม่มีเฟรมเวิร์คการทดสอบและเครื่องมือที่แข็งแกร่งเช่นเดียวกับในสภาพแวดล้อมการเขียนโปรแกรมแบบดั้งเดิม อย่างไรก็ตาม ชุมชนได้ปรับตัวโดยการนำไลบรารีโอเพนซอร์สมาใช้และใช้เครื่องมือที่มีอยู่ของ Google อย่างมีสร้างสรรค์

การใช้ไลบรารีเช่น QUnit เป็นก้าวที่สำคัญไปข้างหน้า แต่มาพร้อมกับความท้าทายของตัวเอง เช่น การตั้งค่าสภาพแวดล้อมการทดสอบที่เหมาะสมและการเรียนรู้ไวยากรณ์เพิ่มเติม อย่างไรก็ตาม สำหรับผู้ที่มุ่งมั่นในการสร้างแอ็พพลิเคชันที่ซับซ้อนและเชื่อถือได้กับ GAS ความพยายามนี้คุ้มค่า

ทางเลือกอื่น เช่น การใช้ฟังก์ชัน GAS ที่เรียบง่ายสำหรับการทดสอบนำเสนอความง่ายดายในการใช้งานและการรวมกับสภาพแวดล้อม GAS โดยไม่ต้องมีการพึ่งพาเพิ่มเติม แต่ขาดคุณสมบัติการทดสอบที่ครอบคลุมและความสามารถในการขยายโปรเจกต์ตามขนาดของโปรเจกต์ได้อย่างง่ายดาย เครื่องมือเช่น clasp (Google Apps Script Command Line Interface) สามารถส่งเสริมกระบวนการทำงานที่ซับซ้อนมากขึ้น รวมถึงการทดสอบ โดยอนุญาตให้นักพัฒนาโค้ดใน IDE ที่พวกเขาชอบ สร้างโอกาสในการรวมกับเฟรมเวิร์คการทดสอบภายนอกได้อย่างราบรื่นยิ่งขึ้น

สรุปแล้ว แม้ว่า GAS อาจไม่มีการสนับสนุนอย่างเป็นทางการสำหรับการทดสอบที่ซับซ้อนอย่างเต็มรูปแบบ แต่ความยืดหยุ่นและวิธีการนวัตกรรมของชุมชนมีให้เส้นทางที่เป็นไปได้ในการรับประกันว่าสคริปต์ของคุณมีความแข็งแรง น่าเชื่อถือ และพร้อมสำหรับงานใดๆ