การแนะนำ
สวัสดีตอนบ่ายชาวเมือง Khabrovsk ตอนนี้ฉันกำลังแก้ไขงานทดสอบตำแหน่ง QA Lead ของบริษัทฟินเทคแห่งหนึ่ง งานแรกในการสร้างแผนการทดสอบพร้อมรายการตรวจสอบที่สมบูรณ์และตัวอย่างกรณีทดสอบสำหรับการทดสอบกาต้มน้ำไฟฟ้าสามารถแก้ไขได้เล็กน้อย:
GOST 7400-81 กาต้มน้ำไฟฟ้าในครัวเรือนและกาโลหะไฟฟ้า ข้อมูลจำเพาะ (พร้อมการแก้ไขหมายเลข 1-8) GOST IEC 60335-1-2015 เครื่องใช้ไฟฟ้าในครัวเรือนและที่คล้ายกัน ความปลอดภัย. ส่วนที่ 1 ข้อกำหนดทั่วไป
เป็นเรื่องยากที่จะนึกถึงแผนการทดสอบที่ดีกว่าพร้อมรายการตรวจสอบที่สมบูรณ์
แต่ส่วนที่สองกลับกลายเป็นคำถาม: “มีปัญหาใดๆ ที่พบบ่อยสำหรับผู้ทดสอบทุกคนที่ขัดขวางไม่ให้พวกเขาทำงานได้อย่างมีประสิทธิภาพมากขึ้นหรือไม่”
สิ่งแรกที่เข้ามาในใจคือการแสดงรายการปัญหาที่เห็นได้ชัดเจนทั้งหมดที่ฉันพบระหว่างการทดสอบ ไม่มากก็น้อย กำจัดสิ่งเล็กๆ น้อยๆ และสรุปส่วนที่เหลือ แต่ฉันรู้ได้อย่างรวดเร็วว่าวิธีการอุปนัยจะตอบคำถามที่ไม่ได้ใช้กับ "ทุกคน" แต่อย่างดีที่สุดจะตอบเฉพาะกับผู้ทดสอบ "ส่วนใหญ่" เท่านั้น ดังนั้นฉันจึงตัดสินใจเข้าใกล้มันจากอีกด้านหนึ่ง แบบนิรนัย และนี่คือสิ่งที่เกิดขึ้น
กำหนด
สิ่งแรกที่ฉันมักจะทำเมื่อแก้ไขปัญหาใหม่คือพยายามทำความเข้าใจว่ามันเกี่ยวกับอะไร และเพื่อจะทำสิ่งนี้ ฉันต้องเข้าใจความหมายของคำที่ก่อให้เกิดปัญหานั้น คำสำคัญที่ต้องทำความเข้าใจมีดังต่อไปนี้:
- ปัญหา
- ผู้ทดสอบ
- งานทดสอบ
- ประสิทธิภาพการทดสอบ
หันมาใช้ Wikipedia และสามัญสำนึกกันดีกว่า:
จริงๆ แล้วมันไม่สมเหตุสมผลเลย "ปัญหา" = "อะไรก็ตามที่จำเป็นต้องได้รับการจัดการ"
เช่นเดียวกับ “ปัญหา” มีความหมายเพียงเล็กน้อย นั่นคือ บางสิ่งบางอย่างที่เป็นผลจากการทำงาน
เงินสด (รายได้) เป็นทรัพยากรหมุนเวียน
พลังงาน (พลังชีวิต) เป็นทรัพยากรหมุนเวียนบางส่วน
เวลาเป็นทรัพยากรที่ตายตัวและไม่หมุนเวียนโดยพื้นฐาน
ความรู้ (ข้อมูล) เป็นทรัพยากรหมุนเวียนซึ่งเป็นส่วนหนึ่งของทุนมนุษย์ที่สามารถเติบโตและถูกทำลายได้
ฉันอยากจะทราบว่าคำจำกัดความของประสิทธิภาพในกรณีของเรานั้นไม่ถูกต้องทั้งหมด เนื่องจากยิ่งเราใช้ความรู้มากเท่าไร ประสิทธิภาพก็ยิ่งลดลงเท่านั้น ดังนั้น ฉันจะนิยามประสิทธิภาพใหม่ว่า "อัตราส่วนระหว่างผลลัพธ์ที่ได้รับและทรัพยากรที่ใช้ไป" จากนั้นทุกอย่างถูกต้อง: ความรู้จะไม่สูญเปล่าระหว่างการทำงาน แต่จะลดต้นทุนของทรัพยากรที่ไม่หมุนเวียนโดยพื้นฐานเพียงอย่างเดียวของผู้ทดสอบนั่นคือเวลาของเขา
การตัดสิน
ดังนั้นเราจึงกำลังมองหาปัญหาระดับโลกของผู้ทดสอบที่ทำให้ประสิทธิภาพในการทำงานลดลง
ทรัพยากรที่สำคัญที่สุดที่ใช้ไปกับงานของผู้ทดสอบคือเวลาของเขา (ส่วนที่เหลือสามารถลดลงได้ไม่ทางใดก็ทางหนึ่ง) และเพื่อให้เราพูดคุยเกี่ยวกับการคำนวณประสิทธิภาพที่ถูกต้องผลลัพธ์จะต้องลดลงตามเวลาด้วย .
ในการดำเนินการนี้ ให้พิจารณาระบบที่ผู้ทดสอบรับรองความมีชีวิตผ่านงานของเขา ระบบดังกล่าวเป็นโครงการที่มีทีมงานรวมผู้ทดสอบด้วย วงจรชีวิตของโครงการสามารถแสดงคร่าวๆ ได้ด้วยอัลกอริธึมต่อไปนี้:
- การทำงานกับข้อกำหนด
- การก่อตัวของข้อกำหนดทางเทคนิค
- ออกแบบ
- การทดสอบ
- ปล่อยเข้าสู่การผลิต
- การสนับสนุน (ไปที่รายการที่ 1)
ในกรณีนี้ โครงการทั้งหมดสามารถแบ่งออกเป็นโครงการย่อย (คุณลักษณะ) แบบวนซ้ำโดยมีวงจรชีวิตเดียวกัน
จากมุมมองของโครงการ ยิ่งใช้เวลาน้อยลงเท่าใด การนำไปปฏิบัติก็มีประสิทธิภาพมากขึ้นเท่านั้น
ดังนั้นเราจึงมาถึงคำจำกัดความของประสิทธิภาพสูงสุดที่เป็นไปได้ของผู้ทดสอบจากมุมมองของโครงการ - นี่คือสถานะของโครงการเมื่อเวลาในการทดสอบเป็นศูนย์ ปัญหาที่พบบ่อยสำหรับผู้ทดสอบทุกคนคือการไม่สามารถทำได้ในเวลานี้
จะจัดการกับสิ่งนี้อย่างไร?
ข้อสรุปค่อนข้างชัดเจนและหลายคนใช้มานานแล้ว:
- การพัฒนาและการทดสอบควรเริ่มต้นและสิ้นสุดเกือบจะพร้อมๆ กัน (โดยปกติแผนกจะเป็นผู้ดำเนินการ)
QA ). ตัวเลือกที่เหมาะสมที่สุดคือเมื่อฟังก์ชันทั้งหมดที่ได้รับการพัฒนานั้นครอบคลุมอยู่แล้วโดยการทดสอบอัตโนมัติเมื่อถึงเวลาที่พร้อม โดยจัดเป็นการทดสอบการถดถอย (และหากเป็นไปได้ ให้กระทำล่วงหน้า) โดยใช้วิธีบางประเภทCI . - ยิ่งโปรเจ็กต์มีคุณสมบัติมากขึ้น (ยิ่งซับซ้อนมากขึ้น) ยิ่งต้องใช้เวลามากขึ้นในการตรวจสอบว่าฟังก์ชันใหม่ไม่ทำให้ฟังก์ชันเก่าเสียหาย ดังนั้น ยิ่งโครงการมีความซับซ้อนมากเท่าใด ระบบอัตโนมัติก็ยิ่งจำเป็นมากขึ้นเท่านั้น
การทดสอบการถดถอย . - ทุกครั้งที่เราพลาดจุดบกพร่องในการใช้งานจริงและผู้ใช้พบมัน เราต้องใช้เวลาเพิ่มเติมในการผ่านวงจรชีวิตของโปรเจ็กต์โดยเริ่มจากจุดที่ 1 (การทำงานกับข้อกำหนด ในกรณีนี้คือ ผู้ใช้) เนื่องจากโดยทั่วไปไม่ทราบสาเหตุของการพลาดข้อบกพร่อง เราจึงเหลือเส้นทางการปรับให้เหมาะสมเพียงเส้นทางเดียว - ทุกข้อบกพร่องที่ผู้ใช้พบจะต้องรวมไว้ในการทดสอบการถดถอยเพื่อให้แน่ใจว่าจะไม่ปรากฏขึ้นอีก
ที่มา: will.com