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