Arduino:
การเขียนการทดสอบ
วิธีการ:
Arduino ไม่มีกรอบการทดสอบที่ติดตั้งมาพร้อมกับระบบเหมือนสภาพแวดล้อมการเขียนโปรแกรมอื่นๆ อย่างไรก็ตาม คุณสามารถใช้ไลบรารีของบุคคลที่สาม เช่น AUnit
สำหรับการทดสอบยูนิตโค้ด Arduino AUnit ได้รับแรงบันดาลใจจากไลบรารีที่ติดตั้งมาพร้อมกับ Arduino, ArduinoUnit
, และกรอบการทดสอบของ Google, Google Test
ตัวอย่างกับ AUnit:
ก่อนอื่น ติดตั้ง AUnit ผ่านทาง Library Manager ใน Arduino IDE: ไปที่ Sketch > Include Library > Manage Libraries… > ค้นหา AUnit และติดตั้ง
จากนั้น คุณสามารถเขียนการทดสอบได้ดังนี้:
#include <AUnit.h>
test(ledPinHigh) {
const int ledPin = 13;
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, HIGH);
assertTrue(digitalRead(ledPin));
}
test(ledPinLow) {
const int ledPin = 13;
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, LOW);
assertFalse(digitalRead(ledPin));
}
void setup() {
Serial.begin(9600);
aunit::TestRunner::run();
}
void loop() {
// ว่างเปล่า
}
หลังจากอัปโหลดการทดสอบนี้ลงบนบอร์ด Arduino ของคุณแล้ว เปิด Serial Monitor เพื่อดูผลลัพธ์ของการทดสอบ คุณควรจะเห็นผลลัพธ์ที่บอกว่าการทดสอบแต่ละครั้งผ่านหรือไม่ผ่าน:
TestRunner เริ่มต้นบน 2 การทดสอบ.
Test ledPinHigh ผ่าน.
Test ledPinLow ผ่าน.
ระยะเวลา TestRunner: 0.002 วินาที.
สรุป TestRunner: 2 ผ่าน, 0 ไม่ผ่าน, 0 ข้าม, 0 หมดเวลา, จาก 2 การทดสอบ.
ตัวอย่างง่ายๆนี้แสดงให้เห็นถึงการใช้ AUnit สำหรับการทดสอบสถานะของพิน LED ด้วยการสร้างการทดสอบ คุณยืนยันว่า Arduino ของคุณทำงานตามที่คาดหวังในสภาพที่แตกต่างกัน ด้วย AUnit คุณสามารถเขียนการทดสอบที่ซับซ้อนยิ่งขึ้น ชุดการทดสอบ และเพลิดเพลินกับคุณสมบัติเช่นเวลาหมดสำหรับการทดสอบ และขั้นตอนการตั้งค่า/ยุติเพื่อสถานการณ์ที่ซับซ้อนยิ่งขึ้น