เครื่องมืออัตโนมัติ 10 อันดับแรกเพื่อให้การทดสอบของคุณง่ายขึ้น
เผยแพร่แล้ว: 2022-01-02วันเวลาจะหายไปเมื่อใช้ระบบ Legacy ในการตั้งค่าข้อมูลที่ละเอียดอ่อนแต่ละรายการในการจัดการสภาพแวดล้อมการทดสอบ แต่ในขณะที่ใช้ระบบ Legacy ผู้ทดสอบและนักพัฒนาประสบปัญหามากมายเกี่ยวกับการรักษาความปลอดภัย การปกปิดข้อมูล และอื่นๆ อีกมากมาย ในปัจจุบัน ระบบอัตโนมัติเป็นเกมใหม่ของสภาพแวดล้อมการทดสอบที่จัดการข้อมูลในแบบที่ผู้ทดสอบและนักพัฒนาต้องการ
มาเริ่มกันเลยกับเครื่องมืออัตโนมัติที่โดดเด่นเหล่านี้ซึ่งทำงานได้อย่างมหาศาลสำหรับการทดสอบข้อมูลใดๆ
HP Loadrunner
LoadRunner เป็นเครื่องมือทดสอบซอฟต์แวร์จาก Micro Focus LoadRunner เป็นเครื่องมือทดสอบซอฟต์แวร์จาก Micro Focus ใช้สำหรับวัดพฤติกรรมของระบบและประสิทธิภาพการทำงานภายใต้โหลด LoadRunner สามารถจำลองผู้ใช้หลายพันคนพร้อมกันโดยใช้ซอฟต์แวร์แอปพลิเคชัน บันทึกและวิเคราะห์ประสิทธิภาพของส่วนประกอบหลักของแอปพลิเคชันในภายหลัง
สคริปต์การจำลองโดยทั่วไปถูกสร้างขึ้นด้วยความช่วยเหลือของภาษาการเขียนโปรแกรม ANSI C LoadRunner ไม่เพียงแต่สามารถเรียกใช้โปรแกรม Java และ .Net เท่านั้น แต่ยังได้รับการสนับสนุนโดยเครื่องมือทดสอบ เช่น Apache JMeter, NUnit และ Selenium โดยการประกาศไลบรารีอินเทอร์เฟซ
เครื่องมือประกอบด้วย 3 องค์ประกอบหลัก:
- ตัวสร้างผู้ใช้เสมือน (Vugen – สำหรับการบันทึกและการเขียนสคริปต์)
- คอนโทรลเลอร์
- เครื่องวิเคราะห์ผลการทดสอบ
ข้อดี:
- Loadrunner สามารถบันทึกประสิทธิภาพของไคลเอนต์/เซิร์ฟเวอร์ระหว่างการทดสอบ
- Loadrunner วิเคราะห์ตำแหน่งที่เกิดความล่าช้าของประสิทธิภาพเครือข่าย/ไคลเอนต์ล่าช้า
- จะตรวจสอบทรัพยากรเครือข่ายและเซิร์ฟเวอร์เพื่อช่วยปรับปรุงประสิทธิภาพ
- มีการใช้งานระบบอัตโนมัติอย่างมีประสิทธิภาพ
- เอ็นจิ้นการเขียนสคริปต์มีความยืดหยุ่น และเราจำลองผู้ใช้จำนวนมากพร้อมกันได้อย่างรวดเร็วและง่ายดาย
- ทำให้ความต้องการของระบบลดลง
จุดด้อย:
- ภาษาสคริปต์ใช้เพื่อแสดงข้อมูลโปรโตคอลที่บันทึกและจัดการข้อมูลสำหรับการเล่น
- สหสัมพันธ์เป็นวิธีแทนที่ค่าในข้อมูลไดนามิกเพื่อให้เล่นสำเร็จ
- โปรโตคอลเป็นเพียงภาษาที่ลูกค้าของคุณใช้ในการสื่อสารกับระบบ
ซีลีเนียม
Selenium เป็นชุดทดสอบอัตโนมัติ (โอเพ่นซอร์ส) ฟรีสำหรับเว็บแอปพลิเคชันในเบราว์เซอร์และแพลตฟอร์มต่างๆ Selenium มีเครื่องมือเล่น (เดิมคือบันทึก) สำหรับการเขียนการทดสอบโดยไม่จำเป็นต้องเรียนรู้ภาษาสคริปต์ทดสอบ (Selenium IDE)
นอกจากนี้ยังมีการทดสอบภาษาเฉพาะโดเมน (Selenese) เพื่อเขียนการทดสอบในภาษาการเขียนโปรแกรมยอดนิยมจำนวนหนึ่ง รวมถึง C#, Groovy, Java, Perl, PHP, Python, Ruby และ Scala
นอกจากนี้ยังใช้สำหรับการทดสอบมือถือ / การทดสอบประสิทธิภาพ แต่ต้องประสานงานกับเครื่องมืออื่น ๆ เช่น Selendroid, Appium
ไม่ใช่เครื่องมือเดียวแต่เป็นชุดของส่วนประกอบ:
- สภาพแวดล้อมการพัฒนาแบบบูรณาการของซีลีเนียม (IDE)
- ซีลีเนียมรีโมทคอนโทรล (RC)
- WebDriver
- ซีลีเนียมกริด
ข้อดี:
- Selenium IDE ปลั๊กอิน Firefox ที่ช่วยให้ผู้ทดสอบบันทึกการกระทำของตนเมื่อปฏิบัติตามเวิร์กโฟลว์ที่จำเป็นในการทดสอบ
- Selenium RC- เป็นเฟรมเวิร์กการทดสอบหลักที่อนุญาตมากกว่าการกระทำของเบราว์เซอร์ทั่วไปและการดำเนินการเชิงเส้น มันใช้พลังเต็มที่ของ
- ภาษาโปรแกรมเช่น Java, C#, PHP, Python, Ruby และ PERL เพื่อสร้างการทดสอบที่ซับซ้อนมากขึ้น
- Selenium WebDriver-เป็นตัวตายตัวแทนของ Selenium RC ซึ่งส่งคำสั่งโดยตรงไปยังเบราว์เซอร์และดึงผลลัพธ์
- Selenium Grid-เป็นเครื่องมือที่ใช้ในการรันการทดสอบแบบคู่ขนานในเครื่องต่างๆ และเบราว์เซอร์ต่างๆ พร้อมกัน ซึ่งส่งผลให้เวลาดำเนินการลดลง
จุดด้อย:
- รองรับเฉพาะแอปพลิเคชันบนเว็บ
- ไม่มี IDE ดังนั้นการพัฒนาสคริปต์จะไม่รวดเร็ว เครื่องมือไม่มีการสร้างรายงานการทดสอบเริ่มต้น
- ไม่สามารถเข้าถึงการควบคุมภายในเบราว์เซอร์
สอบเสร็จ
TestComplete เป็นเครื่องมือทดสอบเชิงพาณิชย์ที่ทรงพลังมากซึ่งส่วนใหญ่ใช้สำหรับการทดสอบบนเว็บ มือถือ และเดสก์ท็อป TestComplete รองรับภาษาสคริปต์ต่างๆ เช่น JavaScript, VBScript, Python และ C++Script ผู้ทดสอบสามารถทำการทดสอบโดยใช้คำหลักและการทดสอบด้วยข้อมูลด้วย TestComplete เครื่องมือนี้ยังมีคุณสมบัติบันทึกและเล่นที่ใช้งานง่าย
เครื่องมือนี้มีความสามารถในการจดจำวัตถุ GUI ที่สามารถตรวจจับและอัปเดตวัตถุ UI ซึ่งช่วยลดความพยายามในการรักษาสคริปต์ทดสอบเมื่อเปลี่ยน AUTO นอกจากนี้ยังรวมเข้ากับเจนกินส์ในกระบวนการ CI
TestComplete มอบความสามารถในการสร้างการทดสอบอัตโนมัติสำหรับ Microsoft Windows, Web, Android (ระบบปฏิบัติการ) และ IOS Applications
ข้อดี:
- รองรับภาษาสคริปต์หลายภาษา
- ซึ่งรวมถึงความสามารถในการบันทึกการทดสอบอัตโนมัติที่มีประสิทธิภาพโดยไม่ต้องมีความรู้ด้านสคริปต์
- การทดสอบการถดถอยที่ไม่ล้มเหลวเมื่อ UI เปลี่ยนไป
- ปลั๊กอินและส่วนขยายที่กำหนดเอง
- การทดสอบที่ขับเคลื่อนด้วยข้อมูล
- อินเทอร์เฟซการเข้าถึงฐานข้อมูล
- อินเทอร์เฟซ Web Service แม้ว่าจะใช้งานไม่ง่าย
จุดด้อย:
- ไม่ได้จับภาพเวลาในการโหลดเสมอ
- ต้องการเห็นการบูรณาการอย่างราบรื่นระหว่างแอปพลิเคชันน้องสาวของ SoapUI
- ช่วงการเรียนรู้เบื้องต้น 2-4 สัปดาห์
- การไม่มีความสามารถในการทดสอบบน Mac หรือกับเบราว์เซอร์ Safari ถือเป็นความหายนะครั้งใหญ่
Appium
Appium สร้างขึ้นจากแนวคิดที่ว่าการทดสอบแอปที่มาพร้อมเครื่องไม่ควรต้องมี SDK หรือการคอมไพล์แอปของคุณใหม่ เครื่องมือนี้มีจุดมุ่งหมายเพื่อทำให้แอปบนอุปกรณ์เคลื่อนที่ทำงานโดยอัตโนมัติจากภาษาและเฟรมเวิร์กการทดสอบใดๆ ด้วยการเข้าถึง API แบ็กเอนด์และฐานข้อมูลจากโค้ดทดสอบอย่างเต็มรูปแบบ เขียนการทดสอบด้วยเครื่องมือ dev ที่คุณชื่นชอบโดยใช้ภาษาโปรแกรมที่รองรับ
ข้อดี:
- รองรับภาษาโปรแกรมส่วนใหญ่เช่น java, ruby
- ใช้ทดสอบได้ทั้งแพลตฟอร์ม iOS และ Android
- รองรับการทำงานอัตโนมัติของไฮบริด เนทีฟ และเว็บแอป
- ข้ามแพลตฟอร์ม
- แบ็กเอนด์คือซีลีเนียม ดังนั้นคุณจะได้รับฟังก์ชันซีลีเนียมทั้งหมด
- ไม่ต้องใช้ APK สำหรับการใช้งาน
- รองรับเฟรมเวิร์กต่างๆ
- สามารถทำการทดสอบข้ามแพลตฟอร์มได้
จุดด้อย:
- ไม่รองรับการเปรียบเทียบภาพ
- ใช้เวลานานในการกำหนดค่า appium สำหรับทั้ง Android และ iOS
Apache Jmeter
Apache JMeter เป็นโปรเจ็กต์ Apache ที่สามารถใช้เป็นเครื่องมือทดสอบโหลดสำหรับวิเคราะห์และวัดประสิทธิภาพของบริการต่างๆ โดยเน้นที่เว็บแอปพลิเคชัน เครื่องมือนี้สามารถใช้เป็นเครื่องมือทดสอบหน่วยสำหรับการเชื่อมต่อฐานข้อมูล JDBC, FTP, LDAP, Web Services, JMS, HTTP, การเชื่อมต่อ TCP ทั่วไป และกระบวนการดั้งเดิมของ OS
สถาปัตยกรรม JMeter ขึ้นอยู่กับปลั๊กอิน คุณลักษณะ "นอกกรอบ" ส่วนใหญ่มีการใช้งานกับปลั๊กอิน นักพัฒนานอกไซต์สามารถขยาย JMeter ด้วยปลั๊กอินที่กำหนดเองได้อย่างง่ายดาย ปลั๊กอินแต่ละตัวมีจุดประสงค์ที่แตกต่างกันและเร่งกระบวนการสร้างและดำเนินการแผนการทดสอบ JMeter ผู้ใช้สามารถติดตั้งปลั๊กอินผ่าน Plugin Manager ปัจจุบันมีปลั๊กอิน 64 ตัว
ข้อดี:
- JMeter เป็นแอปพลิเคชัน Java บนเดสก์ท็อปบริสุทธิ์ 100% จึงสามารถทำงานบนหลายแพลตฟอร์มได้
- มี GUI ที่เป็นมิตรมากที่สุด
- ติดตั้งง่าย
- เป็นเฟรมเวิร์กมัลติเธรดแบบเต็ม
- เห็นภาพผลการทดสอบ
- กลยุทธ์การทดสอบหลายรายการ
- มันสามารถจำลองผู้ใช้หลายคนด้วยเธรดพร้อมกัน สร้างภาระหนักให้กับเว็บแอปพลิเคชันภายใต้การทดสอบ
- รองรับหลายโปรโตคอล
- ฟังก์ชั่นบันทึกและเล่น
จุดด้อย:
- สามารถใช้ได้กับเว็บแอปพลิเคชันเท่านั้น
- การใช้หน่วยความจำในโหมด GUI สูง และการทดสอบประสิทธิภาพ เช่น โหลด ความเครียด และความทนทานที่มีโหลดของผู้ใช้สูง ควรใช้ในโหมด NON-GUI
- ไม่สามารถบันทึกการสื่อสาร HTTPS
- ไม่สามารถสกัดกั้นการรับส่งข้อมูล AJAX
- สถานการณ์ที่ซับซ้อนไม่สามารถทำได้โดยใช้กลุ่มเธรด JMeter
- รองรับเฉพาะการเข้ารหัส Java สำหรับการเข้ารหัสแบบกำหนดเอง
Katalon การทดสอบ
Katalon Studio เป็นหนึ่งในโซลูชันการทดสอบระบบอัตโนมัติที่ทรงพลังที่สุดสำหรับเว็บแอปพลิเคชัน อุปกรณ์เคลื่อนที่ และบริการบนเว็บ เครื่องมือนี้รองรับชุดทักษะการทดสอบระดับต่างๆ Katalon Studio สามารถรวมเข้ากับกระบวนการ CI/CD และทำงานได้ดีกับเครื่องมือยอดนิยมในกระบวนการ QA รวมถึง qTest, JIRA, Jenkins และ Git

หากคุณกำลังมองหาเครื่องมืออัตโนมัติที่มีมุมมอง UI ที่สมบูรณ์ของรายงานการดำเนินการทดสอบ Katalon Studio คือโซลูชันที่เหมาะสมสำหรับคุณ พวกเขามีรายงานการทดสอบแบบภาพและเชิงลึกซึ่งสามารถช่วยให้ทีมของคุณปรับปรุงประสิทธิภาพและประสิทธิผล
ข้อดี:
- รวม 2 โหมดสำหรับทั้งผู้ทดสอบใหม่และผู้ทดสอบผู้เชี่ยวชาญ
- ขึ้นอยู่กับ Selenium และ Appium จึงค่อนข้างคุ้นเคย
- ง่ายต่อการค้นหาการสนับสนุน
- รองรับทั้งโหมดแมนนวลและโหมดสคริปต์
- โซลูชันระบบอัตโนมัติฟรี
- เครื่องมือทรงพลังแต่ใช้งานง่ายและปรับใช้ได้ง่าย
- อัปเดตคุณสมบัติบ่อยครั้ง
- การสนับสนุนที่ดีในฟอรั่มของพวกเขา
จุดด้อย:
- ชุมชนมีขนาดเล็กกว่าเครื่องมือทางการค้าอื่นๆ
- ยังคงช้าเมื่อใช้กรณีทดสอบจำนวนมาก
- ขนาดของแอปพลิเคชันค่อนข้างใหญ่
- เอกสารไม่ชัดเจนและยากที่จะหาวิธีแก้ไขปัญหาของฉัน
สตูดิโอทดสอบ
Test Studio เป็นเว็บอัตโนมัติ WPF และโซลูชันการทดสอบโหลดที่ใช้งานง่ายและเป็นนวัตกรรมใหม่ การทดสอบ Test Studio รองรับเทคโนโลยีที่จำเป็น เช่น ASP.NET AJAX, Silverlight, PHP และ MVC ผู้ใช้สามารถทำงานให้เสร็จได้อย่างรวดเร็วและง่ายดายด้วยอินเทอร์เฟซแบบชี้แล้วคลิกของผลิตภัณฑ์ ให้สิ่งอำนวยความสะดวกการทดสอบประเภทต่างๆ เช่น การทดสอบการทำงาน การทดสอบประสิทธิภาพ การทดสอบการโหลด การทดสอบมือถือ
Test Studio มีผลิตภัณฑ์สามเวอร์ชัน:
- รุ่นของเครื่องมือนี้ทำการทดสอบเว็บและ WPF และรวมปลั๊กอิน Visual Studio
- เวอร์ชันโหลดทำการทดสอบโหลด
- เวอร์ชัน Ultimate รวมเว็บ, มือถือ, WPF, การทดสอบโหลด และ Test Studio สำหรับ API
ข้อดี:
- การสร้าง การดำเนินการ และการจัดการการทดสอบด้วยตนเองที่ง่ายขึ้น
- การบันทึกและเล่นการทดสอบที่แข็งแกร่ง
- บันทึกครั้งเดียว รันกับเบราว์เซอร์หลักทั้งหมด
- กำหนดการทดสอบ การดำเนินการ และการรายงาน
- ปลั๊กอิน Visual Studio สำหรับมืออาชีพด้านการเข้ารหัส
- การทดสอบการถดถอยที่มีประสิทธิภาพมากขึ้น
- การทดสอบเชิงสำรวจ
จุดด้อย:
- การทดสอบการทำงานของ Test Studio เป็นชุดการทดสอบอัตโนมัติที่ครอบคลุมแต่คุ้มค่า
- ต้องการคอมพิวเตอร์ที่ทรงพลังเพื่อเรียกใช้ความสามารถทั้งหมด
- มีตัวเลือกการปรับแต่งมากมายให้ใช้งาน แต่ใช้เวลานานในการตั้งค่า
- ปัญหาเกี่ยวกับการใช้งานคำสั่ง "if-else" สำหรับการใช้คำสั่ง "if-else" องค์ประกอบของคุณจะต้องอยู่ในเงื่อนไข "if" มิฉะนั้น กรณีทดสอบทั้งหมดจะล้มเหลว
- ไม่ใช่เครื่องมือฟรีและมีราคาแพงด้วย
หุ่นยนต์
Robotium เป็นเฟรมเวิร์กการทดสอบที่พัฒนาขึ้นเพื่อให้ง่ายต่อการเขียนกรณีทดสอบ UI อัตโนมัติที่ทรงพลังและมีประสิทธิภาพสำหรับแอปพลิเคชัน Android ด้วยการสนับสนุนของ Robotium นักพัฒนากรณีทดสอบสามารถเขียนฟังก์ชัน ระบบ และสถานการณ์การทดสอบการยอมรับ ครอบคลุมกิจกรรม Android หลายรายการ
เป็นเครื่องมือโอเพ่นซอร์ส Robotium รองรับ Android 1.6 ขึ้นไปอย่างเป็นทางการ เครื่องมือนี้มีการสนับสนุนอย่างเต็มที่สำหรับกิจกรรม ไดอะล็อก ขนมปังปิ้ง เมนู และเมนูบริบท Robotium สามารถใช้ได้ทั้งสำหรับการทดสอบแอปพลิเคชันที่มีซอร์สโค้ดและแอปพลิเคชันที่มีเฉพาะไฟล์ APK เท่านั้น
ข้อดี:
- เวลาอัตโนมัติและความล่าช้า
- กรณีทดสอบที่มีประสิทธิภาพสามารถพัฒนาได้โดยใช้ความรู้เพียงเล็กน้อยเกี่ยวกับแอปพลิเคชันที่อยู่ระหว่างการทดสอบ
- เขียนง่าย โค้ดสั้นลง ใช้เวลาน้อยที่สุดในการเขียนกรณีทดสอบที่เป็นของแข็ง
- เวลาอัตโนมัติและความล่าช้า
- ติดตามกิจกรรมปัจจุบันโดยอัตโนมัติ
- ค้นหา Views โดยอัตโนมัติ
- ตัดสินใจเองโดยอัตโนมัติ (เช่น เลื่อนเมื่อไร ฯลฯ)
- ความสามารถในการอ่านกรณีทดสอบดีขึ้นอย่างมาก เมื่อเทียบกับการทดสอบเครื่องมือวัดมาตรฐาน
จุดด้อย:
- ไม่สามารถจำลองการคลิกบนคีย์บอร์ดแบบนิ่มโดยใช้ Robotium
- มันจัดการเพียงหนึ่งแอปพลิเคชันในแต่ละครั้ง
- Robotium ไม่สามารถจัดการส่วนประกอบ Flash หรือเว็บได้
- อาจทำงานช้าเล็กน้อย โดยเฉพาะการทำงานบนอุปกรณ์รุ่นเก่า
ห้องปฏิบัติการซอส
เครื่องมือนี้เป็นบริษัทแพลตฟอร์มทดสอบอัตโนมัติที่ใช้โฮสต์บนคลาวด์ เว็บและแอปพลิเคชันมือถือของอเมริกา ซึ่งตั้งอยู่ในเมืองซานฟรานซิสโก รัฐแคลิฟอร์เนีย ก่อตั้งขึ้นโดย Jason Huggins ผู้สร้าง Selenium โดย Sauce Labs ให้ผู้ใช้เรียกใช้การทดสอบหน่วย Selenium, Appium และ JavaScript ในเบราว์เซอร์และแพลตฟอร์มระบบปฏิบัติการมากกว่า 400 รายการตามขนาดโดยไม่ต้องตั้งค่าหรือบำรุงรักษาโครงสร้างพื้นฐานการทดสอบเฉพาะ ด้วยผู้ใช้มากกว่า 150,000 ราย Sauce Labs ได้รับความไว้วางใจและชื่นชอบจากลูกค้าในทุกอุตสาหกรรม รวมถึง Salesforce.com, Dropbox, Twitter, PayPal, Yahoo!, Etsy, Google และอื่นๆ
ข้อดี:
- การทดสอบอัตโนมัติช่วยให้ทำการทดสอบบนอุปกรณ์เคลื่อนที่หลายพันเครื่อง คุณสามารถทดสอบอุปกรณ์จำนวนมากขึ้นพร้อมๆ กัน ส่งผลให้สร้างรายงานโดยละเอียดเปรียบเทียบโดยใช้เวลาน้อยลง
- การทดสอบอัตโนมัติมีความน่าเชื่อถือและรวดเร็วยิ่งขึ้นเมื่อใช้การทดสอบมาตรฐานซ้ำๆ ที่น่าเบื่อซึ่งไม่สามารถข้ามได้
- ระบบอัตโนมัติช่วยให้คุณพบจุดบกพร่องในช่วงเริ่มต้นของการพัฒนาซอฟต์แวร์
- ต้องการทรัพยากรมนุษย์น้อยลง
- ดำเนินการทดสอบ 24/7
จุดด้อย:
- ใช้เพื่อให้สามารถโต้ตอบกับเบราว์เซอร์ได้ในขณะที่ทำการทดสอบ แต่ตอนนี้ฟีเจอร์นี้ปิดอยู่ ดูได้เฉพาะการดำเนินการทดสอบ แต่ไม่สามารถโต้ตอบกับเบราว์เซอร์ได้
- การทำงานของเมาส์และคีย์บอร์ดช้ามาก
- UI ควรปรับปรุง ค่อนข้างช้าและใช้เวลาในการดำเนินการ สามารถปรับปรุงประสิทธิภาพโดยรวมได้
- การสนับสนุนช้ามาก พวกเขาถามคำถามที่ไม่เกี่ยวข้องหรือไม่ตอบกลับเป็นเวลาสองสามวันจนกว่าจะได้รับคำตอบที่เป็นประโยชน์ไม่มากก็น้อย ความเร็วในการรองรับขึ้นอยู่กับระดับบัญชีของคุณ
แตงกวา – พฤติกรรม – ขับเคลื่อน
แตงกวามีโครงสร้างตามแนวทาง BDD มันรันการทดสอบการยอมรับอัตโนมัติที่เขียนในรูปแบบการพัฒนาที่ขับเคลื่อนด้วยพฤติกรรม (BDD) อนุญาตให้ระบุพฤติกรรมซอฟต์แวร์ที่คาดหวังในภาษาตรรกะที่ลูกค้าสามารถเข้าใจได้ แตงกวาเขียนด้วยภาษาโปรแกรม Ruby และขณะนี้สนับสนุนภาษาโปรแกรมต่างๆ ที่หลากหลายผ่านการใช้งานที่หลากหลาย สำหรับโครงการแตงกวาทุกโครงการจะมีไดเร็กทอรีเดียวอยู่ที่รูทของโปรเจ็กต์ชื่อ "คุณสมบัติ"
ในไดเร็กทอรีนี้ คุณจะพบไดเร็กทอรีเพิ่มเติม ซึ่งก็คือ step_definition และไดเร็กทอรีสนับสนุน ในที่นี้เราจำเป็นต้องอธิบายเฉพาะสถานการณ์ใน 3 ส่วน “ให้”, “เมื่อ”, “แล้ว”
ให้ – ระบุบริบทของข้อความที่จะดำเนินการ โดยใช้ตารางข้อมูล “ให้” ขั้นตอนยังสามารถกำหนดพารามิเตอร์ได้
When – “When” ระบุการดำเนินการทดสอบที่ต้องทำ
จากนั้น – ผลลัพธ์ที่คาดหวังของการทดสอบสามารถแสดงด้วย “จากนั้น”
ข้อดี:
- การเขียนการทดสอบ BDD ในภาษา Ubiquitous ซึ่งเป็นภาษาที่มีโครงสร้างรอบ ๆ โมเดลโดเมนและใช้งานโดยสมาชิกในทีมทั้งหมด รวมถึงนักพัฒนา ผู้ทดสอบ BA ฯลฯ
- การสร้างสะพานเชื่อมระหว่างสมาชิกด้านเทคนิคและที่ไม่ใช่ด้านเทคนิคของทีมซอฟต์แวร์คือเครื่องมือทดสอบการยอมรับอัตโนมัติ ซึ่งเรียกใช้การทดสอบที่เขียนในรูปแบบการพัฒนาที่ขับเคลื่อนโดยพฤติกรรม (BDD)
- อนุญาตให้โต้ตอบโดยตรงกับโค้ดของนักพัฒนา แต่เขียนด้วยภาษาที่ผู้มีส่วนได้ส่วนเสียทางธุรกิจสามารถเข้าใจได้
จุดด้อย:
- ค่าเริ่มต้นขององค์กรของแตงกวานั้นใช้งานไม่ได้ แตงกวาทางวากยสัมพันธ์ไม่สนับสนุนการใช้รหัสซ้ำ
- มีโปรแกรมเมอร์เพียงไม่กี่คนที่ทำงานในตำแหน่งนี้ และการทดสอบการยอมรับนอกเหนือจากรายการชื่อเมธอดของการทดสอบการรวมแบบปกติดูเหมือนจะสิ้นเปลือง
