การทดสอบด้วยตนเองกับการทดสอบอัตโนมัติ: ความแตกต่าง

เผยแพร่แล้ว: 2022-03-11

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

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

การทดสอบด้วยตนเองและการทดสอบระบบอัตโนมัติ

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

บล็อกนี้ครอบคลุมถึงสิ่งที่เป็นการทดสอบด้วยตนเองและแบบอัตโนมัติ คุณจะทราบรายละเอียดเกี่ยวกับการทดสอบด้วยตนเองและความแตกต่างของการทดสอบอัตโนมัติที่นี่

สารบัญ

การทดสอบด้วยตนเองกับการทดสอบอัตโนมัติ

การทดสอบด้วยตนเองเกี่ยวข้องกับการทดสอบประสิทธิภาพของแอปพลิเคชันทีละขั้นตอนโดยไม่ต้องใช้สคริปต์ทดสอบใดๆ อย่างไรก็ตาม การทดสอบระบบอัตโนมัติใช้กรอบการทดสอบระบบอัตโนมัติ

การทดสอบด้วยตนเองจะดำเนินการทีละขั้นตอนโดยวิศวกรทดสอบ ในขณะที่การดำเนินการกรณีทดสอบในการทดสอบระบบอัตโนมัติจะเป็นแบบอัตโนมัติผ่านเครื่องมือและกรอบงานทดสอบระบบอัตโนมัติ

วิศวกรทดสอบด้วยตนเองใช้ความพยายามอย่างเต็มที่เพื่อให้มั่นใจในความเสถียรและหลีกเลี่ยงข้อบกพร่องในผลิตภัณฑ์ก่อนปล่อย ผู้ทดสอบจัดทำกรณีทดสอบสำหรับรหัสและเตรียมรายงานเพื่อผลลัพธ์

การทดสอบอัตโนมัติใช้เพื่อปรับปรุงประสิทธิภาพและความครอบคลุมของการทดสอบ คุณมักจะแปลงกรณีทดสอบที่พัฒนาด้วยตนเองเป็นสคริปต์ทดสอบเพื่อลดการทำงานของบุคลากร

ความแตกต่างระหว่างการทดสอบด้วยตนเองกับการทดสอบอัตโนมัติ

ความแตกต่างที่สำคัญในการทดสอบด้วยตนเองและการทดสอบอัตโนมัติแสดงอยู่ที่นี่

พารามิเตอร์ การทดสอบด้วยตนเอง การทดสอบระบบอัตโนมัติ
คำนิยาม การทดสอบซอฟต์แวร์ทำโดยวิศวกรเพื่อให้แน่ใจว่าแอปพลิเคชันซอฟต์แวร์มีฟังก์ชันทั้งหมดที่ลูกค้าต้องการ การทดสอบซอฟต์แวร์เกี่ยวข้องกับการใช้เครื่องมือเพื่อให้แน่ใจว่าแอปพลิเคชันเป็นไปตามมาตรฐานคุณภาพ
ผู้ลงมือ ทรัพยากรมนุษย์ เครื่องมือทดสอบ
ความเข้ากันได้ของระบบปฏิบัติการ (OS) ขึ้นอยู่กับผู้ทดสอบ ทำงานร่วมกับแพลตฟอร์มและภาษาเขียนโค้ดที่แตกต่างกัน
การเปลี่ยนแปลงบ่อยครั้ง การเปลี่ยนแปลงเล็กน้อยไม่จำเป็นต้องเปลี่ยนแปลงระดับการดำเนินการที่รุนแรง ต้องแก้ไขสคริปต์เพื่อให้มีการเปลี่ยนแปลงเล็กน้อยที่สุด
ใช้กรณี การใช้งาน, การสำรวจ, การทดสอบเฉพาะกิจ, แอปพลิเคชันที่เปลี่ยนแปลงบ่อยครั้งภายใต้การทดสอบ (AUT) การทดสอบประสิทธิภาพ การทดสอบการถดถอย การทดสอบโหลด กรณีทดสอบการทำงานซ้ำ
การดำเนินการแบบขนาน ใช่ แต่ต้องใช้ทรัพยากรมนุษย์มากกว่านี้ ใช่ สามารถรันบนแพลตฟอร์มปฏิบัติการต่างๆ ได้
ความเป็นไปได้ เมื่อมีการเรียกใช้กรณีทดสอบสองสามครั้ง เช่น การทดสอบเชิงสำรวจ เมื่อกรณีทดสอบถูกเรียกใช้ซ้ำๆ เมื่อเวลาผ่านไป เช่น ในการทดสอบการถดถอย
การทดสอบการตรวจสอบบิลด์ (BVT) ปฏิบัติยาก มีประโยชน์มากในการดำเนินการ
กรอบ ไม่มี. ใช้รายการตรวจสอบ แนวทาง กระบวนการ ฯลฯ คีย์เวิร์ด ขับเคลื่อนด้วยข้อมูล ไฮบริด ฯลฯ
รายงานผลการทดสอบ ไม่สามารถใช้งานได้ง่าย เก็บไว้ใน Word/ Excel เข้าถึงผลลัพธ์ได้ง่ายสำหรับผู้มีส่วนได้ส่วนเสียทั้งหมด

การทดสอบด้วยตนเองคืออะไร?

ความแตกต่างระหว่างการทดสอบด้วยตนเองและระบบอัตโนมัติ

การทดสอบด้วยตนเองเป็นกระบวนการที่ผู้ทดสอบดำเนินการกรณีการใช้งานทีละรายการเพื่อตรวจสอบว่าแอปพลิเคชันมีข้อบกพร่องใดๆ หรือไม่เมื่อเทียบกับข้อกำหนดของผู้ใช้ปลายทาง

มีการรายงานจุดบกพร่องและปัญหาด้านคุณลักษณะผ่านเอกสารที่สร้างขึ้นด้วยตนเอง คุณสมบัติหลักที่ได้รับการตรวจสอบนั้นดีเพียงใดนั้นขึ้นอยู่กับความรู้ ทักษะ และประสบการณ์ของผู้ทดสอบด้วยตนเอง

ประเภทของการทดสอบด้วยตนเอง

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

  • การทดสอบการใช้งาน: ตรวจสอบและประเมินปฏิกิริยาและพฤติกรรมของผู้ใช้ในขณะที่มีส่วนร่วมกับแอปพลิเคชันเพื่อรับข้อมูลเชิงลึกที่สำคัญสำหรับประสบการณ์ของผู้ใช้ บุคคลที่ไม่เกี่ยวข้องกับการผลิตมักจะได้รับงานนี้เพื่อเลียนแบบการตอบสนองของผู้ใช้ปลายทางจริง

  • การทดสอบเชิงสำรวจ: ทำได้โดยเพียงแค่สำรวจแอปพลิเคชันโดยไม่มีหลักเกณฑ์ที่เป็นทางการขณะทำการทดสอบ ผู้มีส่วนได้ส่วนเสียต่างๆ นอกเหนือจากผู้ทดสอบ เช่น ผู้จัดการผลิตภัณฑ์ นักออกแบบ และนักพัฒนาสามารถดำเนินการได้

  • การทดสอบการยอมรับ: เรียกอีกอย่างว่าการทดสอบการยอมรับของผู้ใช้ จะทำหลังจากแก้ไขข้อผิดพลาดทั้งหมดแล้ว ผู้ที่มีแนวโน้มจะเป็นผู้ใช้ผลิตภัณฑ์หรือผู้ใช้จริงพยายามใช้มันเพื่อตรวจสอบว่าตรงตามความคาดหวังและความต้องการของพวกเขาก่อนที่จะเข้าสู่การผลิต

การทดสอบด้วยตนเองทำงานอย่างไร

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

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

การอ่านที่แนะนำ: รายการเครื่องมือทดสอบโอเพ่นซอร์สที่ดีที่สุด

ข้อดีของการทดสอบด้วยตนเอง

  • การลงทุนเริ่มต้นต่ำและเวลาเริ่มต้น
  • ข้อมูลเชิงลึกด้านภาพที่แม่นยำและรวดเร็ว
  • ไม่มีการเข้ารหัสสำหรับการทดสอบการเปลี่ยนแปลงเล็กน้อยอย่างรวดเร็ว
  • ไม่ต้องการการฝึกอบรมเครื่องมืออัตโนมัติ
  • การใช้ดุลยพินิจของมนุษย์มีประโยชน์สำหรับการตัดสินใจเกี่ยวกับข้อบกพร่องที่อาจเกิดขึ้น
  • เหมาะอย่างยิ่งสำหรับการใช้งานที่มี GUI . ที่เปลี่ยนแปลงบ่อย

ความท้าทายกับการทดสอบด้วยตนเอง

  • ข้อผิดพลาดง่าย
  • ใช้เวลานาน โดยเฉพาะการทดสอบซ้ำๆ
  • ไม่มีโค้ดทดสอบที่ใช้ซ้ำได้สำหรับแอปพลิเคชันต่างๆ
  • ราคาแพงในระยะยาว

การทดสอบอัตโนมัติคืออะไร?

ความแตกต่างระหว่างการทดสอบด้วยตนเองและการทดสอบอัตโนมัติ

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

สำหรับงานที่ซ้ำซากจำเจและแอปพลิเคชันที่เปลี่ยนแปลงบ่อยครั้ง โค้ดดังกล่าวช่วยให้สามารถนำโค้ดกลับมาใช้ใหม่ได้โดยไม่ต้องมีการแทรกแซงด้วยตนเองเมื่อสร้างสคริปต์ทดสอบแล้ว

การทดสอบอัตโนมัติทำงานอย่างไร

องค์กรที่ทำงานเกี่ยวกับการทดสอบระบบอัตโนมัติมักมีพนักงานที่ทำงานอัตโนมัติกับนักพัฒนาและผู้ทดสอบด้วยตนเอง ผู้ทดสอบสร้างสคริปต์ทดสอบพร้อมกรณีการใช้งานที่เป็นไปได้ทั้งหมดเพื่อทำให้การดำเนินการทดสอบเป็นไปโดยอัตโนมัติสำหรับแอปพลิเคชันต่างๆ มีเครื่องมือและกรอบการทำงานอัตโนมัติหลายอย่างที่วิศวกรระบบอัตโนมัติและสถาปนิกสามารถเลือกเพื่อการพัฒนาได้

ตัวอย่างของเครื่องมืออัตโนมัติ ได้แก่ IBM Rational Functional Tester, QTP/UFT, Selenium, WinRunner, TestComplete, SilkTest เป็นต้น นอกจากนี้ ทีมงานยังตัดสินใจเลือกเบราว์เซอร์ ระบบปฏิบัติการ และการกำหนดค่าอื่นๆ ที่เหมาะสมสำหรับการเรียกใช้สคริปต์

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

การอ่านที่แนะนำ: เครื่องมือติดตามจุดบกพร่องที่ดีที่สุดในการแก้ไขข้อบกพร่องและปัญหา

ประเภทของการทดสอบระบบอัตโนมัติ

แผนก QA สามารถใช้การทดสอบอัตโนมัติประเภทต่างๆ ร่วมกันเพื่อให้ได้ผลลัพธ์ที่ดีที่สุด การทดสอบระบบอัตโนมัติประเภทหลักบางประเภท ได้แก่:

  • การทดสอบการทำงาน:

    คุณทดสอบการทำงานขององค์ประกอบกับข้อกำหนดโดยไม่ต้องรับรู้ถึงการออกแบบหรือโครงสร้างของแอปพลิเคชันที่อยู่ระหว่างการทดสอบ เรียกอีกอย่างว่าการทดสอบตามพฤติกรรมหรือกล่องดำ

    ตัวอย่างของการทดสอบการทำงาน ได้แก่ การทดสอบการรวม การทดสอบควัน การทดสอบหน่วย และการทดสอบการยอมรับของผู้ใช้

  • การทดสอบที่ไม่ทำงาน:

    การทดสอบนี้เป็นไปตามการทดสอบการใช้งานและตรวจสอบว่าผลิตภัณฑ์ทำงานได้ดีเพียงใดในแง่ของความน่าเชื่อถือ ประสิทธิภาพ การใช้งาน ฯลฯ

    ตัวอย่างของการทดสอบที่ไม่ทำงาน ได้แก่ การทดสอบความปลอดภัย การทดสอบความสามารถในการปรับขนาด การทดสอบโหลด การทดสอบความเข้ากันได้ และการทดสอบประสิทธิภาพ

  • การทดสอบโดยใช้คำหลัก:

    การทดสอบโดยใช้คำสำคัญทำงานโดยเชื่อมโยงคำหลักในไฟล์ข้อมูลกับชุดการดำเนินการที่จะดำเนินการโดยอัตโนมัติสำหรับแอปพลิเคชันที่อยู่ระหว่างการทดสอบ ง่ายต่อการบำรุงรักษา ทำงานร่วมกับเครื่องมืออัตโนมัติใดๆ และไม่จำเป็นต้องมีความรู้ด้านการเขียนโปรแกรม

  • การทดสอบที่ขับเคลื่อนด้วยข้อมูล:

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

  • การทดสอบการถดถอย:

    ในการทดสอบการบำรุงรักษานี้ คุณเรียกใช้การทดสอบการทำงานและการทดสอบที่ไม่ใช่การทำงานอีกครั้งเพื่อตรวจสอบว่าการแก้ไขโค้ดของแอปพลิเคชันมีผลเสียต่อการทำงานหรือประสิทธิภาพหรือไม่

ข้อดีของการทดสอบอัตโนมัติ

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

ความท้าทายกับการทดสอบระบบอัตโนมัติ

  • การลงทุนเริ่มต้นสูงเนื่องจากเครื่องมืออัตโนมัติที่มีราคาแพง
  • ข้อจำกัดในแง่ของข้อมูลเชิงลึกของภาพสำหรับองค์ประกอบ UI เช่น ขนาด แบบอักษร คอนทราสต์ สี ฯลฯ
  • ขอบเขตการทำงานอัตโนมัติมีจำกัด และเครื่องมือไม่สามารถป้องกันความผิดพลาดได้
  • การบำรุงรักษาการเปลี่ยนแปลงบ่อยครั้งและเครื่องมือแก้ไขจุดบกพร่องนั้นมีค่าใช้จ่ายสูง

การทดสอบด้วยตนเองกับการทดสอบอัตโนมัติ: ข้อดีและข้อเสีย

การเปรียบเทียบโดยย่อของการทดสอบด้วยตนเองกับการทดสอบระบบอัตโนมัติแสดงไว้ที่นี่

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

การทดสอบด้วยตนเอง Vs การทดสอบอัตโนมัติ: เมื่อใดควรใช้อะไร

การทดสอบด้วยตนเองจะใช้ในกรณีต่อไปนี้:

  • การทดสอบการใช้งาน: อินเทอร์เฟซของแอปพลิเคชันได้รับการทดสอบว่าใช้งานง่ายและมีประสิทธิภาพ แอปพลิเคชันที่มีช่วงการเรียนรู้ที่สูงชันและต้องมีการฝึกอบรมอย่างเข้มข้นนั้นเป็นเรื่องยากที่จะปรับใช้โดยเจ้าหน้าที่

  • การทดสอบเชิงสำรวจ: ผู้เชี่ยวชาญด้านโดเมนสำรวจฟังก์ชันการทำงานของแอปพลิเคชันผ่านการทดสอบโดยไม่ต้องเน้นที่ข้อกำหนด สิ่งนี้จะทำเมื่อมีเวลาสั้น ๆ สำหรับการดำเนินการและเอกสารที่ไม่เพียงพอ

  • การทดสอบเฉพาะกิจ: เป็นประเภทการทดสอบที่ไม่เป็นทางการซึ่งผู้ทดสอบมีความรู้เพียงพอที่จะสุ่มทดสอบแอปพลิเคชันโดยไม่ต้องใช้เอกสารข้อกำหนดทางธุรกิจที่สร้างขึ้นอย่างเป็นทางการ

แนะนำให้ใช้การทดสอบอัตโนมัติในกรณีต่อไปนี้:

  • การดำเนินการซ้ำ: มีบางกรณีที่การทดสอบจำเป็นต้องดำเนินการซ้ำๆ

  • การทดสอบโหลด: ตรวจสอบว่าแอปพลิเคชันสามารถทำงานได้ดีและจัดการธุรกรรมทั้งหมดในสภาวะโหลดสูงสุดและปกติหรือไม่

  • การทดสอบการถดถอย: โปรแกรมที่ทดสอบแล้วได้รับการทดสอบซ้ำ ๆ เพื่อตรวจสอบว่ามีการเปลี่ยนแปลงใด ๆ หรือมีการแนะนำข้อบกพร่องในแอปพลิเคชัน สิ่งนี้ทำได้เมื่อมีการเปลี่ยนแปลงรหัสบ่อยครั้งและการทดสอบด้วยตนเองไม่สามารถทำการทดสอบได้ทันเวลา

  • การทดสอบประสิทธิภาพ: จำลองการมีอยู่ของผู้ใช้พร้อมกันจำนวนมากเพื่อทดสอบวัตถุประสงค์ด้านประสิทธิภาพ เช่น ปริมาณงานและเวลาตอบสนองของแอปพลิเคชัน

สามารถติดตามทั้งการทดสอบด้วยตนเองและการทดสอบอัตโนมัติสำหรับกรณีเหล่านี้:

  • การทดสอบหน่วย (การทดสอบส่วนประกอบหรือโมดูล): การทดสอบนี้ดำเนินการโดยนักพัฒนาในสภาพแวดล้อมการพัฒนาเพื่อตรวจสอบว่าแต่ละโมดูลหรือหน่วยของซอร์สโค้ดทำงานตามที่ต้องการหรือไม่

  • การทดสอบการรวม: ในการทดสอบประเภทนี้ การทำงานของอินเทอร์เฟซระหว่างหน่วยซอฟต์แวร์สองหน่วยจะถูกตรวจสอบด้วยวิธีต่างๆ เช่น วิธีจากบนลงล่าง วิธีในวงใหญ่ วิธีจากล่างขึ้นบน หรือวิธีการผสานรวมแบบไฮบริด

  • การทดสอบระบบ (การทดสอบตั้งแต่ต้นจนจบ): การทดสอบประเภทนี้ใช้เพื่อตรวจสอบว่าแอปพลิเคชันที่ผสานรวมอย่างสมบูรณ์เป็นไปตามข้อกำหนดที่ระบุหรือไม่

  • การทดสอบการยอมรับ (การทดสอบก่อนการผลิต): ผู้ใช้ปลายทาง (หรือผู้ที่มีโอกาสเป็นลูกค้า) ร่วมกับผู้ทดสอบทำการทดสอบการยอมรับเพื่อตรวจสอบว่าแอปพลิเคชันทำงานตามความต้องการหรือไม่ มันมีสามขั้นตอน: อัลฟ่า, เบต้า, แกมมา

บทสรุป

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

คำถามที่พบบ่อย

  1. การทดสอบด้วยตนเองและการทดสอบอัตโนมัติแตกต่างกันอย่างไร

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

  2. การทดสอบอัตโนมัติสามารถแทนที่การทดสอบด้วยตนเองด้วยเวลาได้หรือไม่

    ไม่ได้ มีการทดสอบบางอย่างที่ต้องใช้ดุลยพินิจของมนุษย์และจะไม่ดำเนินการโดยอัตโนมัติในเร็วๆ นี้

  3. เหตุใดคุณจึงชอบการทดสอบด้วยตนเองมากกว่าการทดสอบอัตโนมัติ

    การทดสอบด้วยตนเองเป็นที่ต้องการมากกว่าการทดสอบอัตโนมัติเมื่อสามารถทำได้ง่ายกว่าและเร็วกว่ามากเมื่อเทียบกับการสร้างโค้ดสำหรับการทดสอบแอปพลิเคชัน นอกจากนี้ยังใช้สำหรับการทดสอบที่ไม่สามารถทำได้โดยอัตโนมัติ

  4. คุณต้องการทดสอบด้วยตนเองมากกว่าการทดสอบอัตโนมัติเมื่อใด

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

  5. ระบบอัตโนมัติแทนที่การทดสอบด้วยตนเองหรือไม่

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

  6. เราข้ามการทดสอบด้วยตนเองได้ไหม

    ไม่ได้ คุณไม่สามารถข้ามการทดสอบด้วยตนเองได้ในกรณีที่ไม่สามารถทำการทดสอบอัตโนมัติได้ หากคุณต้องการสร้างความพึงพอใจให้กับลูกค้าด้วยการเปิดตัวผลิตภัณฑ์ที่มีคุณภาพ

  7. การทดสอบด้วยตนเองจะสิ้นสุดหรือไม่

    การทดสอบด้วยตนเองจะไม่สิ้นสุด แต่จะพัฒนาไปพร้อมกับการเปลี่ยนแปลงในอุตสาหกรรมไอที ดังนั้น ผู้ทดสอบต้องคอยอัปเดตตัวเองอยู่เสมอเพื่อให้เหมาะสมกับอุตสาหกรรมที่กำลังพัฒนา

  8. การทดสอบอัตโนมัติประเภทต่าง ๆ มีอะไรบ้าง

    การทดสอบระบบอัตโนมัติทั่วไปบางประเภทรวมถึงการทดสอบการรวม การทดสอบการยอมรับ การทดสอบความปลอดภัย การทดสอบประสิทธิภาพ การทดสอบ API การทดสอบการถดถอย ฯลฯ

หมวดหมู่ที่เกี่ยวข้อง: ซอฟต์แวร์ทดสอบระบบอัตโนมัติ | ทดสอบการออกแบบอัตโนมัติ | เครื่องมือทดสอบซอฟต์แวร์ | โหลดซอฟต์แวร์ทดสอบ | เครื่องมือทดสอบเมนเฟรม