Visual Basic for Applications:
การเขียนการทดสอบ

วิธีการ:

แม้ว่า Visual Basic for Applications (VBA) จะไม่มาพร้อมกับกรอบการทดสอบที่สร้างไว้ล่วงหน้าเหมือนกับที่มีให้ในภาษาเช่น Python หรือ JavaScript คุณสามารถนำไปใช้ในการสร้างขั้นตอนการทดสอบที่ง่ายๆ เพื่อตรวจสอบความสมบูรณ์ของโค้ดของคุณได้ ต่อไปนี้คือตัวอย่างเพื่อแสดงให้เห็น:

สมมุติว่าคุณมีฟังก์ชันใน VBA ที่เพิ่มตัวเลขสองตัว:

Function AddNumbers(x As Integer, y As Integer) As Integer
    AddNumbers = x + y
End Function

เพื่อทดสอบฟังก์ชันนี้ คุณสามารถเขียนขั้นตอนอื่นที่ตรวจสอบผลลัพธ์ของมันกับผลลัพธ์ที่คาดหวัง:

Sub TestAddNumbers()
    Dim result As Integer
    result = AddNumbers(5, 10)
    If result = 15 Then
        MsgBox "การทดสอบผ่าน!", vbInformation
    Else
        MsgBox "การทดสอบล้มเหลว คาดว่าจะได้ 15 แต่ได้ " & result, vbCritical
    End If
End Sub

การทำงาน TestAddNumbers จะแสดงกล่องข้อความที่บ่งบอกว่าการทดสอบนั้นผ่านหรือล้มเหลวตามผลลัพธ์ของฟังก์ชัน แม้ว่านี่จะเป็นสถานการณ์ที่ง่าย คุณสามารถสร้างการทดสอบที่ซับซ้อนมากขึ้นโดยการรวมวนซ้ำ ค่าข้อมูลนำเข้าที่แตกต่างกัน และการทดสอบสำหรับฟังก์ชันมากมาย

ลงลึก

เทคนิคในการเขียนการทดสอบใน VBA ที่แสดงที่นี่เป็นแบบแมนนวลและขาดคุณสมบัติของกรอบการทดสอบที่มีความซับซ้อนมากขึ้นที่มีในสภาพแวดล้อมการเขียนโปรแกรมอื่นๆ เช่น การรันการทดสอบโดยอัตโนมัติ ขั้นตอนการตั้งค่า/รื้อถอน และการรายงานผลการทดสอบที่ผสานรวมกัน ก่อนการยอมรับกว้างขวางของกรอบการทดสอบหน่วยและการพัฒนาตามการทดสอบ (TDD) การทดสอบแบบแมนนวลเช่นที่อธิบายไว้นั้นเป็นสิ่งที่พบบ่อย แม้ว่าวิธีนี้จะเรียบง่ายและอาจมีประสิทธิภาพสำหรับโปรเจกต์ขนาดเล็กหรือเพื่อวัตถุประสงค์ในการเรียนรู้ แต่มันไม่สามารถขยายหรือมีประสิทธิภาพสำหรับโปรเจกต์ขนาดใหญ่หรือทีม

ในสภาพแวดล้อมที่สนับสนุนชุดเครื่องมือการพัฒนาที่มากขึ้น โปรแกรมเมอร์มักจะหันไปใช้กรอบการทดสอบเช่น NUnit สำหรับแอปพลิเคชัน .NET หรือ JUnit สำหรับแอปพลิเคชัน Java ซึ่งมีเครื่องมือครบถ้วนสำหรับการเขียนและการทดสอบอย่างมีระบบ เครื่องมือเหล่านี้นำเสนอคุณสมบัติขั้นสูงเช่นการยืนยันผลการทดสอบ เตรียมวัตถุเลียนแบบ และการวัดความครอบคลุมของโค้ด

สำหรับผู้พัฒนา VBA ที่กำลังมองหาความสามารถในการทดสอบที่ล้ำสมัยมากขึ้น ทางเลือกที่ใกล้เคียงที่สุดอาจเป็นการใช้เครื่องมือภายนอกหรือการผสานกับสภาพแวดล้อมการเขียนโปรแกรมอื่นๆ บางคนใช้ VBA ร่วมกับ Excel เพื่อบันทึกสถานการณ์และผลลัพธ์ของการทดสอบด้วยตนเอง แม้ว่าจะไม่สะดวกหรืออัตโนมัติเท่ากับการใช้กรอบการทดสอบที่เฉพาะเจาะจง วิธีการเหล่านี้สามารถช่วยเชื่อมช่องว่างได้บ้าง ช่วยรักษาความน่าเชื่อถือของโซลูชัน VBA ในแอปพลิเคชันที่ซับซ้อนหรือสำคัญ