การทดสอบลิงและกอริลลาคืออะไร? ตัวอย่างความแตกต่าง
การทดสอบลิง
การทดสอบลิง เป็นเทคนิคการทดสอบซอฟต์แวร์ที่ผู้ทดสอบป้อนข้อมูลแบบสุ่มเข้าไปในแอปพลิเคชันซอฟต์แวร์โดยไม่มีกรณีทดสอบที่กำหนดไว้ล่วงหน้า และตรวจสอบพฤติกรรมของแอปพลิเคชันซอฟต์แวร์ไม่ว่าจะล่มหรือไม่ก็ตาม วัตถุประสงค์ของการทดสอบ Monkey คือการค้นหาจุดบกพร่องและข้อผิดพลาดในแอปพลิเคชันซอฟต์แวร์โดยใช้เทคนิคการทดลอง
- ใน Monkey Testing ผู้ทดสอบ (บางครั้งก็เป็นผู้พัฒนาด้วย) ถือเป็น 'Monkey'
- ถ้าลิงใช้คอมพิวเตอร์ มันจะสุ่มทำงานใดๆ ในระบบโดยไม่เข้าใจ
- เช่นเดียวกับผู้ทดสอบจะใช้กรณีทดสอบแบบสุ่มบนระบบที่ทดสอบเพื่อค้นหาข้อบกพร่อง/ข้อผิดพลาดโดยไม่ต้องกำหนดกรณีทดสอบล่วงหน้า
- ในบางกรณี Monkey Testing มีไว้เพื่อ การทดสอบหน่วย or การทดสอบ GUI เกินไป
การทดสอบกอริลลาคืออะไร?
การทดสอบกอริลลาเป็นเทคนิคการทดสอบซอฟต์แวร์โดยที่โมดูลของโปรแกรมได้รับการทดสอบซ้ำ ๆ เพื่อให้แน่ใจว่าทำงานได้อย่างถูกต้องและไม่มีจุดบกพร่องในโมดูลนั้น
โมดูลสามารถทดสอบได้มากกว่าร้อยครั้งและในลักษณะเดียวกัน ดังนั้นการทดสอบกอริลลาจึงเรียกอีกอย่างว่า "การทดสอบที่น่าหงุดหงิด"
ข้อดีของการทดสอบลิง:
- ข้อบกพร่องชนิดใหม่: ผู้ทดสอบสามารถทดลองใช้การทดสอบได้อย่างเต็มที่ตามความเข้าใจของเขา นอกเหนือจากสถานการณ์ที่ระบุไว้ก่อนหน้านี้ ซึ่งอาจไม่ได้ผล ของข้อผิดพลาด/ข้อบกพร่องใหม่ที่มีอยู่ในระบบ
- ดำเนินการได้ง่าย: การจัดเตรียมการทดสอบแบบสุ่มกับข้อมูลสุ่มเป็นวิธีง่ายๆ ในการทดสอบระบบ
- Less ผู้มีทักษะ: การทดสอบลิงสามารถทำได้โดยไม่ต้องมีผู้ทดสอบที่มีทักษะ (แต่ไม่เสมอไป)
- Less มีค่าใช้จ่ายสูง: ต้องใช้ค่าใช้จ่ายน้อยกว่ามากในการตั้งค่าและดำเนินการทดสอบกรณี
ข้อเสียของการทดสอบลิง:
- ไม่มีข้อผิดพลาดที่สามารถทำซ้ำได้: เนื่องจากผู้ทดสอบทำการทดสอบแบบสุ่มด้วยข้อมูลแบบสุ่ม ทำให้เกิดข้อผิดพลาดหรือข้อผิดพลาดใดๆ ขึ้นมาใหม่อาจไม่สามารถทำได้
- Less ความแม่นยำ: ผู้ทดสอบไม่สามารถกำหนดสถานการณ์การทดสอบที่แน่นอนได้ และแม้แต่ไม่สามารถรับประกันความถูกต้องของกรณีทดสอบได้
- ต้องใช้ความเชี่ยวชาญทางเทคนิคที่ดีมาก: มันไม่คุ้มค่าเสมอไปที่จะประนีประนอมกับความถูกต้อง ดังนั้นเพื่อทำให้กรณีการทดสอบมีความแม่นยำมากขึ้น ผู้ทดสอบจะต้องมีความรู้ทางเทคนิคที่ดีเกี่ยวกับโดเมน
- จุดบกพร่องน้อยลงและใช้เวลานาน: การทดสอบนี้อาจใช้เวลานานขึ้นเนื่องจากไม่มีการทดสอบที่กำหนดไว้ล่วงหน้า และสามารถค้นหาจุดบกพร่องจำนวนน้อยลงซึ่งอาจทำให้เกิดช่องโหว่ในระบบ
เราสามารถพิจารณาได้ว่าการทดสอบลิง การทดสอบกอริลลา และการทดสอบเฉพาะกิจนั้นเหมือนกัน เนื่องจากมีข้อเท็จจริงบางอย่างที่คล้ายคลึงกันปรากฏอยู่ในทั้งหมด แต่ความจริงก็คือพวกมันแตกต่างกัน… อย่างไร?
ก่อนอื่นเราจะเห็นความแตกต่างระหว่างการทดสอบลิงและกอริลลา ขั้นแรกให้ชัดเจนเพื่อหลีกเลี่ยงความสับสน
การทดสอบลิง V/s การทดสอบกอริลลา:
การทดสอบลิง | การทดสอบกอริลลา |
---|---|
การทดสอบลิงจะดำเนินการแบบสุ่มโดยไม่มีกรณีทดสอบที่กำหนดไว้ล่วงหน้าโดยเฉพาะ | มันไม่ได้ถูกกำหนดไว้ล่วงหน้าหรือสุ่ม |
การทดสอบลิงจะดำเนินการบนทั้งระบบสามารถมีกรณีทดสอบได้หลายกรณี | การทดสอบกอริลลาดำเนินการกับโมดูลที่เลือกเพียงไม่กี่โมดูลและมีกรณีทดสอบไม่กี่กรณี |
วัตถุประสงค์ของ Monkey Testing คือการตรวจสอบความผิดพลาดของระบบ | วัตถุประสงค์ของการทดสอบ Gorilla คือการตรวจสอบว่าโมดูลทำงานอย่างถูกต้องหรือไม่ |
เมื่อเคลียร์ความแตกต่างนี้แล้ว ให้ลองดูต่อไป
การทดสอบลิงกับการทดสอบเฉพาะกิจ:
การทดสอบลิง | การทดสอบเฉพาะกิจ |
---|---|
การทดสอบลิงจะดำเนินการแบบสุ่มโดยไม่มีกรณีทดสอบที่กำหนดไว้ล่วงหน้าโดยเฉพาะ | การทดสอบเฉพาะกิจดำเนินการโดยไม่ต้องมีการวางแผนและจัดทำเอกสาร (กรณีทดสอบและ SRS) |
ใน Monkey Testing ผู้ทดสอบอาจไม่รู้ว่าระบบคืออะไรและมีวัตถุประสงค์อย่างไร | ใน Ad-hoc Testing ผู้ทดสอบจะต้องเข้าใจระบบอย่างมีนัยสำคัญก่อนทำการทดสอบ |
วัตถุประสงค์ของ Monkey Testing คือการตรวจสอบความผิดพลาดของระบบ | วัตถุประสงค์ของการทดสอบเฉพาะกิจคือการแบ่งระบบแบบสุ่มออกเป็นส่วนย่อยและตรวจสอบการทำงาน |
ประเภทของการทดสอบลิง
การทดสอบลิงยังแบ่งออกเป็นหลายประเภทตามวิธีการนำไปใช้ ดูแผนภาพต่อไปนี้เพื่อดูแนวคิดโดยย่อ
- ลิงโง่: ผู้ทดสอบไม่ทราบเกี่ยวกับระบบและฟังก์ชันการทำงานของระบบ และไม่มีการรับประกันเกี่ยวกับความถูกต้องของกรณีทดสอบ
- ลิงอัจฉริยะ: ผู้ทดสอบมีแนวคิดที่ชัดเจนเกี่ยวกับวัตถุประสงค์และการทำงานของระบบ ผู้ทดสอบจะนำทางผ่านระบบและให้อินพุตที่ถูกต้องเพื่อทำการทดสอบ
- ลิงเก่ง: ผู้ทดสอบทำการทดสอบตามพฤติกรรมของผู้ใช้และสามารถระบุความน่าจะเป็นที่จะเกิดข้อบกพร่องได้
การทดสอบลิงก็สามารถทำได้เช่นกัน Android สม่ำเสมอ. Monkey Testing อาจมีประสิทธิภาพด้วยการใช้เครื่องมือ แม้จะสามารถใช้เพื่อค้นหาจุดบกพร่องเพิ่มเติมได้เหมือนกับการทดสอบประเภทอื่นๆ ถ้าเราใช้เครื่องมือสำหรับ Monkey Testing กระบวนการทั่วไปที่ตามมาจะเป็นอย่างไร? เพียงแค่ดูอย่างรวดเร็ว
- เช่นเดียวกับเครื่องมือทดสอบอื่นๆ ขั้นตอนแรกคือการลงทะเบียนซอฟต์แวร์ของคุณกับเซิร์ฟเวอร์เฉพาะ
- ตรวจสอบให้แน่ใจว่าคุณได้เตรียมข้อมูลอ้างอิงที่จำเป็นทั้งหมดไว้อย่างดีเพื่อสร้างชุดการทดสอบ
- เรียกใช้ชุดทดสอบที่สร้างขึ้น
- 'Monkey Test' คือไฟล์บันทึกการทดสอบซึ่งจะถูกสร้างขึ้นเพื่อบันทึกผลการทดสอบ
- โปรดทราบว่าการทดสอบจะดำเนินต่อไปจนกว่าระบบจะถึงจุดขัดข้องซึ่งมีการบันทึกการกระทำลงในไฟล์บันทึก
- สุดท้ายนี้ รายงานผลการทดสอบจะถูกแชร์กับบุคคลที่เกี่ยวข้อง และข้อมูลการทดสอบสามารถจัดเก็บและใช้สำหรับการอ้างอิงในอนาคตได้
กระบวนการของการทดสอบลิงสามารถทำให้เป็นอัตโนมัติได้แม้ว่าจะใช้เครื่องมือ แต่เนื่องจากเป็นการทดสอบรูปแบบใหม่บางประเภทที่นำมาใช้และยังไม่ได้กำหนดขึ้นในระดับอุตสาหกรรม เครื่องมือเหล่านี้จึงมีเอกลักษณ์น้อยกว่าไม่เหมือนเครื่องมืออื่นๆ สถานการณ์นี้อาจมีการเปลี่ยนแปลงไปตามยุคของกระบวนการทดสอบที่กำลังจะมาถึง จากนั้นเราจะพิจารณาผลกระทบที่จะเกิดขึ้นจากการทดสอบ Monkey และผลกระทบที่สำคัญต่อมาตรฐานอุตสาหกรรม นี่คือบทช่วยสอนเบื้องต้นสำหรับ Monkey Testing เพื่อครอบคลุมแนวคิดพื้นฐานเกี่ยวกับเรื่องนี้
สรุป
- Monkey Testing เป็นประเภทการทดสอบที่ค่อนข้างใหม่เพื่อทำการทดสอบ
- มันแตกต่างอย่างมากจากการทดสอบกอริลลาและ การทดสอบเฉพาะกิจ.
- การทดสอบลิงอาจเป็นประโยชน์ในบางพื้นที่ของการทดสอบ
- In วิศวกรรมซอฟต์แวร์, Monkey Testing มี 3 ประเภทใหญ่ๆ คือ Dumb Monkey, Smart Monkey และ Brilliant Monkey
- สามารถใช้เครื่องมือเพื่อทำให้ Monkey Testing เป็นอัตโนมัติ มีประสิทธิภาพและประสิทธิผล