ประเภทของการทดสอบซอฟต์แวร์ (100 ตัวอย่าง)
ประเภทการทดสอบซอฟต์แวร์คืออะไร?
ประเภทการทดสอบซอฟต์แวร์คือการจำแนกประเภทของกิจกรรมการทดสอบที่แตกต่างกันออกเป็นหมวดหมู่ โดยแต่ละประเภทมีวัตถุประสงค์การทดสอบที่กำหนดไว้ กลยุทธ์การทดสอบ และสิ่งที่ส่งมอบในการทดสอบ เป้าหมายของการมีประเภทการทดสอบคือการตรวจสอบความถูกต้องของ Application Under Test (AUT) สำหรับวัตถุประสงค์การทดสอบที่กำหนดไว้
ตัวอย่างเช่น เป้าหมายของการทดสอบการเข้าถึงคือการตรวจสอบ AUT เพื่อให้ผู้พิการสามารถเข้าถึงได้ ดังนั้น หากโซลูชันซอฟต์แวร์ของคุณจะต้องปิดการใช้งานอย่างเป็นมิตร คุณจะตรวจสอบกับกรณีทดสอบการช่วยสำหรับการเข้าถึง
ประเภทของการทดสอบซอฟต์แวร์
รายชื่อของ 100 ประเภทการทดสอบซอฟต์แวร์ พร้อมด้วยคำจำกัดความ มืออาชีพด้าน QA ทุกคนต้องอ่าน พิจารณาคำแนะนำของคุณสำหรับการทดสอบซอฟต์แวร์ทุกประเภท
- การทดสอบการยอมรับ: การทดสอบอย่างเป็นทางการดำเนินการเพื่อพิจารณาว่าระบบเป็นไปตามเกณฑ์การยอมรับหรือไม่ และเพื่อให้ลูกค้าสามารถระบุได้ว่าจะยอมรับระบบหรือไม่ โดยปกติแล้วลูกค้าจะดำเนินการ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบการยอมรับ
- การทดสอบการเข้าถึง: ประเภทของการทดสอบที่กำหนดการใช้งานผลิตภัณฑ์สำหรับผู้พิการ (หูหนวก ตาบอด พิการทางจิต ฯลฯ) กระบวนการประเมินดำเนินการโดยบุคคลที่มีความพิการ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบการช่วยสำหรับการเข้าถึง
- การทดสอบที่ใช้งานอยู่: ประเภทของการทดสอบประกอบด้วยการแนะนำข้อมูลการทดสอบและการวิเคราะห์ผลการดำเนินการ โดยปกติจะดำเนินการโดยทีมทดสอบ
- การทดสอบแบบคล่องตัว: แนวปฏิบัติการทดสอบซอฟต์แวร์ที่เป็นไปตามหลักการของ Agile manifesto โดยเน้นการทดสอบจากมุมมองของลูกค้าที่จะใช้ระบบ โดยปกติจะดำเนินการโดยทีมงาน QA อ่านเพิ่มเติมเกี่ยวกับ การทดสอบเปรียว
- การทดสอบอายุ: ประเภทของการทดสอบที่ประเมินความสามารถของระบบในการดำเนินการในอนาคต กระบวนการประเมินดำเนินการโดยทีมทดสอบ
- การทดสอบเฉพาะกิจ: การทดสอบดำเนินการโดยไม่มีการวางแผนและจัดทำเอกสาร – ผู้ทดสอบพยายาม 'หยุด' ระบบโดยการสุ่มลองใช้ฟังก์ชันการทำงานของระบบ ดำเนินการโดยทีมทดสอบ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบเฉพาะกิจ
- การทดสอบอัลฟ่า: การทดสอบอัลฟ่าคือการทดสอบซอฟต์แวร์ประเภทหนึ่งที่ดำเนินการที่ไซต์ของนักพัฒนาเพื่อระบุจุดบกพร่อง ปัญหาการใช้งาน และช่องว่างด้านการทำงานก่อนจะปล่อยผลิตภัณฑ์สำหรับการทดสอบเบต้า โดยเกี่ยวข้องกับผู้ทดสอบภายใน เช่น นักพัฒนาและทีม QA และบางครั้งอาจเลือกผู้ใช้ปลายทางในสภาพแวดล้อมที่มีการควบคุม อ่านเพิ่มเติมได้ที่ การทดสอบอัลฟ่า
- การทดสอบการยืนยัน: ประเภทของการทดสอบประกอบด้วยการตรวจสอบว่าเงื่อนไขยืนยันข้อกำหนดของผลิตภัณฑ์หรือไม่ ดำเนินการโดยทีมทดสอบ
- การทดสอบ API: เทคนิคการทดสอบคล้ายกับ Unit Testing โดยกำหนดเป้าหมายไปที่ระดับโค้ด การทดสอบ Api แตกต่างจากการทดสอบหน่วยตรงที่โดยทั่วไปแล้วจะเป็นงาน QA ไม่ใช่งานของนักพัฒนา อ่านเพิ่มเติมเกี่ยวกับ การทดสอบ API
- การทดสอบทุกคู่: วิธีการทดสอบแบบผสมผสานที่ทดสอบการรวมพารามิเตอร์อินพุตแบบแยกที่เป็นไปได้ทั้งหมดที่เป็นไปได้ ดำเนินการโดยทีมทดสอบ
- การทดสอบอัตโนมัติ: เทคนิคการทดสอบที่ใช้เครื่องมือการทดสอบอัตโนมัติเพื่อควบคุมการตั้งค่าสภาพแวดล้อม การดำเนินการทดสอบ และการรายงานผลลัพธ์ ดำเนินการโดยคอมพิวเตอร์และใช้ภายในทีมทดสอบ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบอัตโนมัติ
- การทดสอบเส้นทางพื้นฐาน: กลไกการทดสอบซึ่งนำมาซึ่งการวัดความซับซ้อนเชิงตรรกะของการออกแบบตามขั้นตอน และใช้เป็นแนวทางในการกำหนดชุดเส้นทางการดำเนินการพื้นฐาน ซึ่งใช้โดยทีมทดสอบในการกำหนดกรณีทดสอบ อ่านเพิ่มเติมได้ที่ การทดสอบเส้นทางพื้นฐาน
- การทดสอบความเข้ากันได้แบบย้อนหลัง: วิธีการทดสอบที่ตรวจสอบพฤติกรรมของซอฟต์แวร์ที่พัฒนาขึ้นด้วยสภาพแวดล้อมการทดสอบเวอร์ชันเก่า ดำเนินการโดยทีมงานทดสอบ
- การทดสอบเบต้า: การทดสอบขั้นสุดท้ายก่อนเผยแพร่แอปพลิเคชันเพื่อวัตถุประสงค์ทางการค้า โดยทั่วไปจะทำโดยผู้ใช้ปลายทางหรือผู้อื่น
- การทดสอบเกณฑ์มาตรฐาน: เทคนิคการทดสอบที่ใช้ชุดตัวแทนของโปรแกรมและข้อมูลที่ออกแบบมาเพื่อประเมินประสิทธิภาพของฮาร์ดแวร์และซอฟต์แวร์คอมพิวเตอร์ในการกำหนดค่าที่กำหนด ดำเนินการโดยทีมทดสอบ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบเกณฑ์มาตรฐาน
- การทดสอบการรวม Big Bang: เทคนิคการทดสอบซึ่งจะรวมแต่ละโมดูลโปรแกรมเฉพาะเมื่อทุกอย่างพร้อมเท่านั้น ดำเนินการโดยทีมทดสอบ
- การทดสอบความสามารถในการพกพาแบบไบนารี: เทคนิคที่ทดสอบแอปพลิเคชันปฏิบัติการสำหรับการพกพาข้ามแพลตฟอร์มระบบและสภาพแวดล้อม โดยปกติเพื่อให้เป็นไปตามข้อกำหนด ABI ดำเนินการโดยทีมทดสอบ
- การทดสอบค่าขอบเขต: เทคนิคการทดสอบซอฟต์แวร์ที่การทดสอบได้รับการออกแบบให้รวมตัวแทนของค่าขอบเขต ดำเนินการโดยทีมทดสอบ QA อ่านเพิ่มเติมเกี่ยวกับ การทดสอบค่าขอบเขต
- การทดสอบการรวมจากล่างขึ้นบน: ในการทดสอบการรวมจากล่างขึ้นบน โมดูลที่ระดับต่ำสุดจะได้รับการพัฒนาก่อน และโมดูลอื่นๆ ที่ไปสู่โปรแกรม 'หลัก' จะถูกรวมและทดสอบทีละรายการ โดยปกติจะดำเนินการโดยทีมทดสอบ
- การทดสอบสาขา: เทคนิคการทดสอบโดยทุกสาขาในซอร์สโค้ดของโปรแกรมได้รับการทดสอบอย่างน้อยหนึ่งครั้ง นี้จะกระทำโดยนักพัฒนา
- การทดสอบความกว้าง: ชุดทดสอบที่ใช้ฟังก์ชันการทำงานเต็มรูปแบบของผลิตภัณฑ์แต่ไม่ได้ทดสอบคุณลักษณะโดยละเอียด ดำเนินการโดยทีมทดสอบ
- การทดสอบกล่องดำ: วิธีการทดสอบซอฟต์แวร์ที่ยืนยันการทำงานของแอปพลิเคชันโดยไม่ต้องมีความรู้เฉพาะเกี่ยวกับโค้ด/โครงสร้างภายในของแอปพลิเคชัน การทดสอบขึ้นอยู่กับข้อกำหนดและฟังก์ชันการทำงาน ดำเนินการโดยทีมงาน QA อ่านเพิ่มเติมเกี่ยวกับ การทดสอบกล่องดำ
- การทดสอบที่ขับเคลื่อนด้วยโค้ด: เทคนิคการทดสอบที่ใช้เฟรมเวิร์กการทดสอบ (เช่น xUnit) ที่อนุญาตให้ดำเนินการทดสอบหน่วยเพื่อตรวจสอบว่าส่วนต่างๆ ของโค้ดทำงานตามที่คาดไว้ภายใต้สถานการณ์ต่างๆ หรือไม่ ดำเนินการโดยทีมพัฒนา
- การทดสอบความเข้ากันได้: เทคนิคการทดสอบที่ตรวจสอบประสิทธิภาพของซอฟต์แวร์ในสภาพแวดล้อมฮาร์ดแวร์/ซอฟต์แวร์/ระบบปฏิบัติการ/เครือข่ายเฉพาะ โดยทีมทดสอบจะเป็นผู้ดำเนินการ อ่านเพิ่มเติมได้ที่ การทดสอบความเข้ากันได้
- การทดสอบเปรียบเทียบ: เทคนิคการทดสอบซึ่งเปรียบเทียบจุดแข็งและจุดอ่อนของผลิตภัณฑ์กับเวอร์ชันก่อนหน้าหรือผลิตภัณฑ์ที่คล้ายคลึงกัน สามารถทำได้โดยผู้ทดสอบ นักพัฒนา ผู้จัดการผลิตภัณฑ์ หรือเจ้าของผลิตภัณฑ์ อ่านเพิ่มเติมได้ที่ การทดสอบส่วนประกอบ
- การทดสอบส่วนประกอบ: เทคนิคการทดสอบคล้ายกับการทดสอบหน่วย แต่มีระดับการบูรณาการที่สูงกว่า การทดสอบจะดำเนินการในบริบทของแอปพลิเคชัน แทนที่จะทดสอบเพียงวิธีเฉพาะโดยตรง สามารถทำได้โดยทีมทดสอบหรือพัฒนา
- การทดสอบการกำหนดค่า: เทคนิคการทดสอบที่กำหนดการกำหนดค่าฮาร์ดแวร์และซอฟต์แวร์ขั้นต่ำและเหมาะสมที่สุด และผลของการเพิ่มหรือแก้ไขทรัพยากร เช่น หน่วยความจำ ดิสก์ไดรฟ์ และ CPU โดยปกติจะดำเนินการโดยวิศวกรทดสอบประสิทธิภาพ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบการกำหนดค่า
- การทดสอบความครอบคลุมของสภาพ: ประเภทของการทดสอบซอฟต์แวร์โดยดำเนินการแต่ละเงื่อนไขโดยกำหนดให้เป็นจริงและเท็จในแต่ละวิธีอย่างน้อยหนึ่งครั้ง โดยทั่วไปจะทำโดยทีมทดสอบระบบอัตโนมัติ
- การทดสอบการปฏิบัติตามข้อกำหนด: ประเภทของการทดสอบที่ตรวจสอบว่าระบบได้รับการพัฒนาตามมาตรฐาน ขั้นตอน และแนวปฏิบัติหรือไม่ โดยปกติจะดำเนินการโดยบริษัทภายนอกที่นำเสนอแบรนด์ "Certified OGC Compliant"
- การทดสอบพร้อมกัน: การทดสอบแบบหลายผู้ใช้มุ่งเป้าไปที่การพิจารณาผลกระทบของการเข้าถึงโค้ดแอปพลิเคชัน โมดูล หรือบันทึกฐานข้อมูลเดียวกัน โดยปกติจะทำโดยวิศวกรด้านประสิทธิภาพ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบพร้อมกัน
- การทดสอบความสอดคล้อง: กระบวนการทดสอบว่าการใช้งานเป็นไปตามข้อกำหนดที่เป็นพื้นฐาน โดยปกติจะดำเนินการโดยทีมทดสอบ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบความสอดคล้อง
- การทดสอบที่ขับเคลื่อนด้วยบริบท: เทคนิคการทดสอบแบบ Agile ที่สนับสนุนการประเมินโอกาสในการทดสอบอย่างต่อเนื่องและสร้างสรรค์โดยคำนึงถึงข้อมูลที่เป็นไปได้ที่เปิดเผยและคุณค่าของข้อมูลนั้นต่อองค์กรในช่วงเวลาที่กำหนด โดยปกติจะดำเนินการโดยทีมทดสอบ Agile
- การทดสอบการแปลง: การทดสอบโปรแกรมหรือขั้นตอนที่ใช้ในการแปลงข้อมูลจากระบบที่มีอยู่เพื่อใช้ในระบบทดแทน โดยปกติจะดำเนินการโดยทีมงาน QA
- การทดสอบความครอบคลุมการตัดสินใจ: ประเภทของการทดสอบซอฟต์แวร์ที่ดำเนินการแต่ละเงื่อนไข/การตัดสินใจโดยการตั้งค่าเป็นจริง/เท็จ โดยทั่วไปจะทำโดยทีมทดสอบระบบอัตโนมัติ
- การทดสอบแบบทำลายล้าง: ประเภทของการทดสอบที่ดำเนินการทดสอบจนถึงความล้มเหลวของชิ้นงานทดสอบ เพื่อทำความเข้าใจประสิทธิภาพโครงสร้างของชิ้นงานทดสอบหรือพฤติกรรมของวัสดุภายใต้แรงกระทำที่แตกต่างกัน โดยปกติจะดำเนินการโดยทีมงาน QA
อ่านเพิ่มเติมที่ การทดสอบแบบทำลายล้าง - การทดสอบการพึ่งพา: ประเภทการทดสอบที่ตรวจสอบข้อกำหนดของแอปพลิเคชันสำหรับซอฟต์แวร์ที่มีอยู่แล้ว สถานะเริ่มต้น และการกำหนดค่า เพื่อรักษาฟังก์ชันการทำงานที่เหมาะสม โดยปกติจะดำเนินการโดยทีมทดสอบ
- การทดสอบแบบไดนามิก: คำที่ใช้ในวิศวกรรมซอฟต์แวร์เพื่ออธิบายการทดสอบพฤติกรรมไดนามิกของโค้ด โดยทั่วไปจะดำเนินการโดยทีมทดสอบ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบแบบไดนามิก
- การทดสอบโดเมน: เทคนิคการทดสอบกล่องสีขาวซึ่งประกอบด้วยการตรวจสอบว่าโปรแกรมยอมรับเฉพาะอินพุตที่ถูกต้องเท่านั้น โดยทั่วไปแล้วจะทำโดยทีมพัฒนาซอฟต์แวร์และบางครั้งจะทำโดยทีมทดสอบอัตโนมัติ
- การทดสอบการจัดการข้อผิดพลาด: ประเภทการทดสอบซอฟต์แวร์ซึ่งกำหนดความสามารถของระบบในการประมวลผลธุรกรรมที่ผิดพลาดได้อย่างเหมาะสม โดยปกติแล้วจะดำเนินการโดยทีมทดสอบ
- การทดสอบแบบครบวงจร: เช่นเดียวกับการทดสอบระบบ เกี่ยวข้องกับการทดสอบสภาพแวดล้อมแอปพลิเคชันที่สมบูรณ์ในสถานการณ์ที่เลียนแบบการใช้งานจริง เช่น การโต้ตอบกับฐานข้อมูล การใช้การสื่อสารเครือข่าย หรือการโต้ตอบกับฮาร์ดแวร์ แอปพลิเคชัน หรือระบบอื่น ๆ ตามความเหมาะสม ดำเนินการโดยทีมงาน QA อ่านเพิ่มเติมเกี่ยวกับ การทดสอบแบบครบวงจร
- การทดสอบความทนทาน: ประเภทของการทดสอบที่ตรวจสอบหน่วยความจำรั่วหรือปัญหาอื่นๆ ที่อาจเกิดขึ้นจากการดำเนินการเป็นเวลานาน โดยปกติจะดำเนินการโดยวิศวกรด้านประสิทธิภาพ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบความทนทาน
- การทดสอบเชิงสำรวจ: เทคนิคการทดสอบกล่องดำที่ดำเนินการโดยไม่มีการวางแผนและการบันทึกข้อมูล โดยทั่วไปแล้วจะทำโดยผู้ทดสอบด้วยตนเอง อ่านเพิ่มเติมได้ที่ การทดสอบเชิงสำรวจ
- การทดสอบการแบ่งพาร์ติชันที่เท่ากัน: เทคนิคการทดสอบซอฟต์แวร์ที่แบ่งข้อมูลอินพุตของหน่วยซอฟต์แวร์ออกเป็นพาร์ติชันของข้อมูลที่สามารถรับกรณีทดสอบได้ โดยปกติจะดำเนินการโดยทีมงานควบคุมคุณภาพ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบการแบ่งพาร์ติชันที่เท่ากัน
- การทดสอบการฉีดข้อผิดพลาด: องค์ประกอบของกลยุทธ์การทดสอบที่ครอบคลุมซึ่งช่วยให้ผู้ทดสอบมุ่งความสนใจไปที่ลักษณะที่แอปพลิเคชันภายใต้การทดสอบสามารถจัดการกับข้อยกเว้นได้ ดำเนินการโดยทีมงาน QA
- การทดสอบการตรวจสอบอย่างเป็นทางการ: การกระทำเพื่อพิสูจน์หรือหักล้างความถูกต้องของอัลกอริทึมที่ตั้งใจไว้ซึ่งเป็นพื้นฐานของระบบโดยคำนึงถึงข้อกำหนดหรือคุณสมบัติอย่างเป็นทางการบางอย่าง โดยใช้วิธีการทางคณิตศาสตร์อย่างเป็นทางการ โดยปกติแล้วจะดำเนินการโดยทีม QA
- การทดสอบการทำงาน: ประเภทของการทดสอบกล่องดำที่ใช้กรณีทดสอบตามข้อมูลจำเพาะของส่วนประกอบซอฟต์แวร์ที่ทดสอบ ดำเนินการโดยทีมทดสอบ อ่านเพิ่มเติม การทดสอบสมรรถนะ
- การทดสอบฟัซ: เทคนิคการทดสอบซอฟต์แวร์ที่ให้ข้อมูลที่ไม่ถูกต้อง ไม่คาดคิด หรือสุ่มให้กับอินพุตของโปรแกรม ซึ่งเป็นพื้นที่พิเศษของการทดสอบการกลายพันธุ์ การทดสอบ Fuzz ดำเนินการโดยทีมทดสอบ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบฟัซ
- การทดสอบกอริลลา: เทคนิคการทดสอบซอฟต์แวร์ที่เน้นการทดสอบอย่างหนักในโมดูลใดโมดูลหนึ่งโดยเฉพาะ ดำเนินการโดยทีมประกันคุณภาพ โดยปกติจะทำการทดสอบเต็มรูปแบบ
- สีเทา Box การทดสอบ: การรวมกันของสีดำ Box และขาว Box วิธีการทดสอบ: ทดสอบซอฟต์แวร์ตามข้อกำหนด แต่ใช้ความรู้บางอย่างเกี่ยวกับการทำงานภายใน สามารถทำได้โดยทีมพัฒนาหรือทีมทดสอบ
- การทดสอบกล่องกระจก: การทดสอบแบบ White Box คล้ายกับการทดสอบโดยใช้ความรู้เกี่ยวกับตรรกะภายในของโค้ดแอปพลิเคชัน โดยทีมพัฒนาเป็นผู้ดำเนินการ
- การทดสอบซอฟต์แวร์ GUI: กระบวนการทดสอบผลิตภัณฑ์ที่ใช้อินเทอร์เฟซผู้ใช้แบบกราฟิก เพื่อให้แน่ใจว่าเป็นไปตามข้อกำหนดที่เป็นลายลักษณ์อักษร โดยปกติแล้วทีมทดสอบจะทำสิ่งนี้ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบซอฟต์แวร์ GUI
- การทดสอบโลกาภิวัตน์: วิธีการทดสอบที่ตรวจสอบฟังก์ชันการทำงานที่เหมาะสมของผลิตภัณฑ์ด้วยการตั้งค่าวัฒนธรรม/สถานที่ใดๆ โดยใช้อินพุตสากลทุกประเภทที่เป็นไปได้ ดำเนินการโดยทีมทดสอบ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบโลกาภิวัตน์
- การทดสอบการรวมแบบไฮบริด: เทคนิคการทดสอบที่ผสมผสานเทคนิคการรวมจากบนลงล่างและจากล่างขึ้นบนเพื่อใช้ประโยชน์จากการทดสอบประเภทนี้ โดยปกติจะดำเนินการโดยทีมทดสอบ
- การทดสอบการรวมระบบ: ขั้นตอนในการทดสอบซอฟต์แวร์ซึ่งมีการรวมโมดูลซอฟต์แวร์แต่ละตัวและทดสอบเป็นกลุ่ม โดยปกติจะดำเนินการโดยทีมทดสอบ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบการผสานรวม
- การทดสอบอินเทอร์เฟซ: การทดสอบดำเนินการเพื่อประเมินว่าระบบหรือส่วนประกอบส่งข้อมูลและควบคุมซึ่งกันและกันอย่างถูกต้องหรือไม่ โดยปกติจะดำเนินการโดยทั้งทีมทดสอบและทีมพัฒนา อ่านเพิ่มเติมเกี่ยวกับ การทดสอบอินเทอร์เฟซ
- ติดตั้ง/ถอนการติดตั้งการทดสอบ: งานรับรองคุณภาพที่เน้นที่สิ่งที่ลูกค้าจะต้องทำเพื่อติดตั้งและตั้งค่าซอฟต์แวร์ใหม่ให้สำเร็จ ซึ่งอาจรวมถึงกระบวนการติดตั้ง/ถอนการติดตั้งทั้งหมด บางส่วน หรืออัปเกรด และโดยปกติแล้วจะทำโดยวิศวกรทดสอบซอฟต์แวร์ร่วมกับผู้จัดการการกำหนดค่า
- การทดสอบความเป็นสากล: กระบวนการที่ทำให้แน่ใจได้ว่าฟังก์ชันการทำงานของผลิตภัณฑ์จะไม่เสียหาย และข้อความทั้งหมดจะถูกส่งออกอย่างเหมาะสมเมื่อใช้ในภาษาและสถานที่ที่แตกต่างกัน โดยปกติจะดำเนินการโดยทีมทดสอบ
- การทดสอบระหว่างระบบ: เทคนิคการทดสอบที่เน้นไปที่การตรวจยืนยันว่าการเชื่อมต่อระหว่างแอปพลิเคชันทำงานได้อย่างถูกต้อง โดยทั่วไปแล้วจะทำโดยทีมทดสอบ
- การทดสอบที่ขับเคลื่อนด้วยคำหลัก: หรือที่เรียกว่าการทดสอบที่ขับเคลื่อนด้วยตารางหรือการทดสอบคำที่กระทำ เป็นวิธีการทดสอบซอฟต์แวร์สำหรับการทดสอบอัตโนมัติที่แยกกระบวนการสร้างการทดสอบออกเป็นสองขั้นตอนที่แตกต่างกัน: ขั้นตอนการวางแผนและขั้นตอนการนำไปใช้งาน สามารถใช้โดยทีมทดสอบแบบแมนนวลหรือแบบอัตโนมัติ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบที่ขับเคลื่อนด้วยคำหลัก
- โหลดการทดสอบ: เทคนิคการทดสอบที่ส่งความต้องการระบบหรืออุปกรณ์และวัดการตอบสนอง โดยปกติจะดำเนินการโดยวิศวกรด้านประสิทธิภาพ อ่านเพิ่มเติมเกี่ยวกับ โหลดการทดสอบ
- การทดสอบการแปล: ส่วนหนึ่งของกระบวนการทดสอบซอฟต์แวร์ที่มุ่งเน้นไปที่การปรับแอปพลิเคชันระดับโลกให้เข้ากับวัฒนธรรม/สถานที่เฉพาะ โดยปกติแล้วจะทำโดยทีมทดสอบ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบการแปล
- การทดสอบลูป: เทคนิคการทดสอบกล่องสีขาวที่ใช้ทดสอบลูปโปรแกรม โดยทีมพัฒนาเป็นผู้ดำเนินการ อ่านเพิ่มเติมได้ที่ การทดสอบลูป
- การทดสอบสคริปต์ด้วยตนเอง: วิธีการทดสอบซึ่งกรณีทดสอบได้รับการออกแบบและตรวจสอบโดยทีมงานก่อนดำเนินการ ดำเนินการโดยทีมทดสอบด้วยตนเอง
- การทดสอบการสนับสนุนด้วยตนเอง: เทคนิคการทดสอบที่เกี่ยวข้องกับการทดสอบฟังก์ชันทั้งหมดที่ดำเนินการโดยบุคลากรในขณะเตรียมข้อมูลและใช้ข้อมูลเหล่านี้จากระบบอัตโนมัติ ดำเนินการโดยทีมทดสอบ
- การทดสอบตามแบบจำลอง: การประยุกต์ใช้การออกแบบตามแบบจำลองสำหรับการออกแบบและดำเนินการสิ่งประดิษฐ์ที่จำเป็นในการทดสอบซอฟต์แวร์ โดยปกติจะดำเนินการโดยทีมทดสอบ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบตามแบบจำลอง
- การทดสอบการกลายพันธุ์: วิธีการทดสอบซอฟต์แวร์ที่เกี่ยวข้องกับการแก้ไขซอร์สโค้ดหรือไบต์โค้ดของโปรแกรมด้วยวิธีเล็กๆ น้อยๆ เพื่อทดสอบส่วนของโค้ดที่ไม่ค่อยมีหรือไม่เคยเข้าถึงในระหว่างการทดสอบปกติ โดยปกติจะดำเนินการโดยผู้ทดสอบ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบการกลายพันธุ์
- การทดสอบที่ขับเคลื่อนด้วยโมดูลาร์: เทคนิคการทดสอบซอฟต์แวร์ที่ต้องมีการสร้างสคริปต์ขนาดเล็กที่เป็นอิสระซึ่งแสดงถึงโมดูล ส่วน และฟังก์ชันของแอปพลิเคชันภายใต้การทดสอบ โดยปกติจะดำเนินการโดยทีมทดสอบ
- การทดสอบไม่ทำงาน: เทคนิคการทดสอบที่เน้นการทดสอบแอปพลิเคชันซอฟต์แวร์สำหรับข้อกำหนดที่ไม่สามารถใช้งานได้ สามารถดำเนินการโดยวิศวกรด้านประสิทธิภาพหรือโดยทีมทดสอบด้วยตนเอง อ่านเพิ่มเติมเกี่ยวกับ การทดสอบที่ไม่ใช้งาน
- การทดสอบเชิงลบ: เรียกอีกอย่างว่า “การทดสอบเพื่อล้มเหลว” – วิธีการทดสอบที่จุดมุ่งหมายของการทดสอบคือการแสดงให้เห็นว่าส่วนประกอบหรือระบบไม่ทำงาน โดยจะทำการทดสอบด้วยมือหรืออัตโนมัติ อ่านเพิ่มเติมได้ที่ การทดสอบเชิงลบ
- Operaการทดสอบเชิงตรรกะ: เทคนิคการทดสอบที่ดำเนินการเพื่อประเมินระบบหรือส่วนประกอบในสภาพแวดล้อมการทำงาน โดยปกติแล้วจะทำโดยทีมทดสอบ อ่านเพิ่มเติมได้ที่ Operaการทดสอบเชิงตรรกะ
- การทดสอบอาเรย์มุมฉาก: วิธีการทดสอบที่เป็นระบบและเป็นสถิติซึ่งสามารถนำไปใช้ในการทดสอบอินเทอร์เฟซผู้ใช้ การทดสอบระบบ การทดสอบการถดถอย การทดสอบการกำหนดค่า และการทดสอบประสิทธิภาพ ดำเนินการโดยทีมทดสอบ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบอาเรย์มุมฉาก
- การทดสอบคู่: เทคนิคการพัฒนาซอฟต์แวร์ที่สมาชิกในทีมสองคนทำงานร่วมกันบนแป้นพิมพ์เดียวเพื่อทดสอบแอปพลิเคชันซอฟต์แวร์ คนหนึ่งทำการทดสอบ และอีกคนหนึ่งวิเคราะห์หรือทบทวนการทดสอบ ซึ่งสามารถทำได้ระหว่างผู้ทดสอบหนึ่งคนกับนักพัฒนาหรือนักวิเคราะห์ธุรกิจ หรือระหว่างผู้ทดสอบสองคนโดยให้ผู้เข้าร่วมทั้งสองคนผลัดกันขับคีย์บอร์ด
- การทดสอบแบบพาสซีฟ: เทคนิคการทดสอบประกอบด้วยการติดตามผลลัพธ์ของระบบที่ทำงานอยู่โดยไม่ต้องมีข้อมูลการทดสอบพิเศษใดๆ ดำเนินการโดยทีมทดสอบ
- การทดสอบแบบขนาน: เทคนิคการทดสอบที่มีวัตถุประสงค์เพื่อให้แน่ใจว่ามีการติดตั้งแอปพลิเคชันใหม่ซึ่งแทนที่เวอร์ชันเก่าและทำงานอย่างถูกต้อง ดำเนินการโดยทีมงานทดสอบ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบแบบขนาน
- การทดสอบเส้นทาง: การทดสอบกล่องสีขาวทั่วไปซึ่งมีเป้าหมายเพื่อตอบสนองเกณฑ์การครอบคลุมสำหรับแต่ละเส้นทางตรรกะผ่านโปรแกรม โดยทั่วไปแล้วจะดำเนินการโดยทีมพัฒนา อ่านเพิ่มเติมได้ที่ การทดสอบเส้นทาง
- การทดสอบการเจาะ: วิธีการทดสอบที่ประเมินความปลอดภัยของระบบคอมพิวเตอร์หรือเครือข่ายโดยจำลองการโจมตีจากแหล่งที่เป็นอันตราย โดยปกติแล้วจะดำเนินการโดยบริษัททดสอบการเจาะระบบเฉพาะทาง อ่านเพิ่มเติมเกี่ยวกับ Penetration Testing
- การทดสอบประสิทธิภาพ: การทดสอบการทำงานที่ดำเนินการเพื่อประเมินความสอดคล้องของระบบหรือส่วนประกอบตามข้อกำหนดด้านประสิทธิภาพที่ระบุ โดยปกติจะดำเนินการโดยวิศวกรด้านประสิทธิภาพ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบประสิทธิภาพ
- การทดสอบคุณสมบัติ: การทดสอบกับข้อกำหนดของรุ่นก่อนหน้า ซึ่งโดยปกติจะดำเนินการโดยนักพัฒนาเพื่อผู้บริโภค เพื่อแสดงให้เห็นว่าซอฟต์แวร์ตรงตามข้อกำหนดที่ระบุ
- Ramp การทดสอบ: ประเภทของการทดสอบประกอบด้วยการเพิ่มสัญญาณอินพุตอย่างต่อเนื่องจนระบบพัง อาจดำเนินการโดยทีมทดสอบหรือวิศวกรด้านประสิทธิภาพ
- การทดสอบการถดถอย: ประเภทของการทดสอบซอฟต์แวร์ที่พยายามค้นหาข้อผิดพลาดของซอฟต์แวร์หลังจากมีการเปลี่ยนแปลงโปรแกรม (เช่น การแก้ไขข้อบกพร่องหรือฟังก์ชันการทำงานใหม่) โดยการทดสอบโปรแกรมซ้ำ ดำเนินการโดยทีมทดสอบ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบการถดถอย
- การทดสอบการฟื้นตัว: เทคนิคการทดสอบที่ประเมินว่าระบบสามารถกู้คืนจากการขัดข้อง ความล้มเหลวของฮาร์ดแวร์ หรือปัญหาภัยพิบัติอื่นๆ ได้ดีเพียงใด ดำเนินการโดยทีมทดสอบ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบการกู้คืน
- การทดสอบข้อกำหนด: เทคนิคการทดสอบที่ตรวจสอบว่าข้อกำหนดนั้นถูกต้อง สมบูรณ์ ไม่คลุมเครือ และสอดคล้องกันในเชิงตรรกะ และช่วยให้สามารถออกแบบชุดกรณีทดสอบที่จำเป็นและเพียงพอจากข้อกำหนดเหล่านั้น ดำเนินการโดยทีมงาน QA
- การทดสอบความปลอดภัย: กระบวนการในการพิจารณาว่าระบบสารสนเทศปกป้องข้อมูลและรักษาฟังก์ชันการทำงานตามที่ตั้งใจไว้ สามารถทำได้โดยทีมทดสอบหรือบริษัททดสอบความปลอดภัยที่เชี่ยวชาญ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบความปลอดภัย
- การทดสอบสติ: เทคนิคการทดสอบซึ่งกำหนดว่าซอฟต์แวร์เวอร์ชันใหม่ทำงานได้ดีพอที่จะยอมรับในการทดสอบที่สำคัญหรือไม่ ดำเนินการโดยทีมทดสอบ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบสติ
- การทดสอบสถานการณ์: กิจกรรมการทดสอบที่ใช้สถานการณ์สมมติเพื่อช่วยให้ผู้คนคิดเกี่ยวกับปัญหาหรือระบบที่ซับซ้อนในสภาพแวดล้อมการทดสอบ ดำเนินการโดยทีมทดสอบ อ่านเพิ่มเติมได้ที่ การทดสอบสถานการณ์
- การทดสอบความสามารถในการปรับขนาด: ส่วนหนึ่งของแบตเตอรี่ของการทดสอบที่ไม่ใช้งานซึ่งจะทดสอบแอปพลิเคชันซอฟต์แวร์สำหรับการวัดความสามารถในการขยายขนาด ไม่ว่าจะเป็นโหลดของผู้ใช้ที่รองรับ จำนวนธุรกรรม ปริมาณข้อมูล ฯลฯ ดำเนินการโดยวิศวกรด้านประสิทธิภาพ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบความสามารถในการปรับขนาด
- การทดสอบคำสั่ง: การทดสอบกล่องสีขาวซึ่งตรงตามเกณฑ์ที่ว่าคำสั่งแต่ละคำสั่งในโปรแกรมจะถูกดำเนินการอย่างน้อยหนึ่งครั้งระหว่างการทดสอบโปรแกรม โดยทั่วไปแล้วทีมพัฒนาจะดำเนินการนี้
- การทดสอบแบบสถิต: รูปแบบของการทดสอบซอฟต์แวร์โดยที่ซอฟต์แวร์ไม่ได้ใช้งานจริง จะตรวจสอบความสมบูรณ์ของโค้ด อัลกอริธึม หรือเอกสารเป็นหลัก มันถูกใช้โดยนักพัฒนาที่เขียนโค้ด อ่านเพิ่มเติมเกี่ยวกับ การทดสอบแบบสถิต
- การทดสอบความเสถียร: เทคนิคการทดสอบซึ่งพยายามตรวจสอบว่าแอปพลิเคชันจะขัดข้องหรือไม่ โดยปกติจะดำเนินการโดยวิศวกรด้านประสิทธิภาพ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบความเสถียร
- การทดสอบควัน: เทคนิคการทดสอบซึ่งจะตรวจสอบส่วนประกอบพื้นฐานทั้งหมดของระบบซอฟต์แวร์เพื่อให้แน่ใจว่าทำงานได้อย่างถูกต้อง โดยทั่วไปแล้ว การทดสอบควันจะดำเนินการโดยทีมทดสอบทันทีหลังจากสร้างซอฟต์แวร์แล้ว อ่านเพิ่มเติมเกี่ยวกับ การทดสอบควัน
- การทดสอบการจัดเก็บ: ประเภทการทดสอบที่ตรวจสอบโปรแกรมภายใต้การทดสอบจะเก็บไฟล์ข้อมูลไว้ในไดเร็กทอรีที่ถูกต้อง และสงวนพื้นที่เพียงพอเพื่อป้องกันการยกเลิกโดยไม่คาดคิดอันเป็นผลมาจากพื้นที่ไม่เพียงพอ โดยปกติจะดำเนินการโดยทีมทดสอบ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบการจัดเก็บ
- การทดสอบความเครียด: เทคนิคการทดสอบที่ประเมินระบบหรือส่วนประกอบที่หรือเกินขีดจำกัดของข้อกำหนดที่ระบุ โดยปกติจะดำเนินการโดยวิศวกรด้านประสิทธิภาพ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบความเครียด
- การทดสอบโครงสร้าง: เทคนิคการทดสอบกล่องสีขาวซึ่งคำนึงถึงโครงสร้างภายในของระบบหรือส่วนประกอบและรับรองว่าคำสั่งแต่ละโปรแกรมทำงานตามหน้าที่ที่ตั้งใจไว้ โดยปกติแล้วนักพัฒนาซอฟต์แวร์จะดำเนินการนี้
- การทดสอบระบบ: กระบวนการทดสอบระบบฮาร์ดแวร์และซอฟต์แวร์แบบรวมเพื่อตรวจสอบว่าระบบตรงตามข้อกำหนดที่ระบุ ดำเนินการโดยทีมทดสอบทั้งในสภาพแวดล้อมการพัฒนาและเป้าหมาย อ่านเพิ่มเติมเกี่ยวกับ การทดสอบระบบ
- การทดสอบการรวมระบบ: กระบวนการทดสอบที่ฝึกการอยู่ร่วมกันของระบบซอฟต์แวร์กับผู้อื่น โดยปกติจะดำเนินการโดยทีมทดสอบ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบการรวมระบบ
- การทดสอบการรวมจากบนลงล่าง: เทคนิคการทดสอบที่เกี่ยวข้องกับการเริ่มต้นที่ด้านบนสุดของลำดับชั้นของระบบที่ส่วนต่อประสานกับผู้ใช้ และใช้ stub เพื่อทดสอบจากบนลงล่างจนกระทั่งระบบทั้งหมดถูกนำไปใช้ ดำเนินการโดยทีมทดสอบ
- การทดสอบเธรด: รูปแบบของเทคนิคการทดสอบจากบนลงล่างที่การบูรณาการส่วนประกอบอย่างต่อเนื่องเป็นไปตามการนำชุดย่อยของข้อกำหนดไปใช้ โดยปกติจะดำเนินการโดยทีมทดสอบ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบเธรด
- Upgrade การทดสอบ: เทคนิคการทดสอบที่ตรวจสอบว่าเนื้อหาที่สร้างด้วยเวอร์ชันเก่าสามารถใช้งานได้อย่างถูกต้องหรือไม่ และการเรียนรู้ของผู้ใช้นั้นไม่ถูกท้าทาย ดำเนินการโดยทีมทดสอบ
- การทดสอบหน่วย: วิธีการตรวจสอบและยืนยันซอฟต์แวร์ซึ่งโปรแกรมเมอร์จะทดสอบว่าซอร์สโค้ดแต่ละหน่วยเหมาะสมสำหรับการใช้งานหรือไม่ โดยปกติจะดำเนินการโดยทีมพัฒนา อ่านเพิ่มเติมเกี่ยวกับ การทดสอบหน่วย
- การทดสอบส่วนต่อประสานกับผู้ใช้: ประเภทของการทดสอบที่ดำเนินการเพื่อตรวจสอบว่าแอปพลิเคชันนั้นใช้งานง่ายเพียงใด ดำเนินการโดยทีมทดสอบ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบส่วนต่อประสานกับผู้ใช้
โบนัส !!! เป็นการดีเสมอที่จะรู้อะไรเพิ่มเติมบ้าง
- การทดสอบการใช้งาน: เทคนิคการทดสอบที่ตรวจสอบความง่ายที่ผู้ใช้สามารถเรียนรู้การใช้งาน เตรียมอินพุต และตีความเอาต์พุตของระบบหรือส่วนประกอบ โดยทั่วไปแล้วผู้ใช้ปลายทางเป็นผู้ดำเนินการ อ่านเพิ่มเติมได้ที่ การทดสอบการใช้งาน
- การทดสอบปริมาตร: การทดสอบซึ่งยืนยันว่าค่าใดๆ ที่อาจเพิ่มขึ้นเมื่อเวลาผ่านไป (เช่น จำนวนที่สะสม บันทึก และไฟล์ข้อมูล) สามารถรองรับได้โดยโปรแกรม และจะไม่ทำให้โปรแกรมหยุดทำงานหรือลดประสิทธิภาพการทำงานในลักษณะใดๆ โดยทั่วไปแล้ว วิศวกรด้านประสิทธิภาพจะดำเนินการ อ่านเพิ่มเติมได้ที่ การทดสอบปริมาตร
- การทดสอบช่องโหว่: ประเภทของการทดสอบที่เกี่ยวข้องกับความปลอดภัยของแอปพลิเคชันและมีวัตถุประสงค์เพื่อป้องกันปัญหาที่อาจส่งผลกระทบต่อความสมบูรณ์และความเสถียรของแอปพลิเคชัน สามารถทำได้โดยทีมทดสอบภายในหรือจ้างบริษัทภายนอกที่เชี่ยวชาญ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบช่องโหว่
- การทดสอบกล่องสีขาว: เทคนิคการทดสอบตามความรู้เกี่ยวกับตรรกะภายในของโค้ดของแอปพลิเคชัน และรวมถึงการทดสอบ เช่น ความครอบคลุมของคำสั่งโค้ด สาขา เส้นทาง และเงื่อนไข ดำเนินการโดยนักพัฒนาซอฟต์แวร์ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบกล่องสีขาว
- การทดสอบขั้นตอนการทำงาน: เทคนิคการทดสอบแบบ end-to-end ที่สร้างด้วยสคริปต์ซึ่งทำซ้ำขั้นตอนการทำงานเฉพาะที่ผู้ใช้ปลายทางคาดว่าจะนำไปใช้ โดยปกติจะดำเนินการโดยทีมทดสอบ อ่านเพิ่มเติมเกี่ยวกับ การทดสอบขั้นตอนการทำงาน
เท่านี้ก็เสร็จสิ้นรายการแล้ว หวังว่าคุณคงจะเพลิดเพลินกับการอ่านรายการนี้ หากต้องการค้นหาเครื่องมือที่เหมาะสมสำหรับการทดสอบประเภทนี้และประเภทอื่นๆ ให้สำรวจคอลเล็กชันนี้ เครื่องมือทดสอบ.