ฉันรู้ว่าผู้ดูแลระบบบางคนและตามเขาการทดสอบพวกไม่ได้รับการตั้งค่าในองค์กรเมื่อเทียบกับนักพัฒนา ไม่ต้องสงสัยเลยว่าการเปิดตัวซอฟต์แวร์ไม่สามารถทำได้หากไม่มีผู้ทดสอบ แต่ฉันไม่เคยลองทดสอบเลย ไม่มีเจตนากระทำความผิด
ฉันรู้ว่าผู้ดูแลระบบบางคนและตามเขาการทดสอบพวกไม่ได้รับการตั้งค่าในองค์กรเมื่อเทียบกับนักพัฒนา ไม่ต้องสงสัยเลยว่าการเปิดตัวซอฟต์แวร์ไม่สามารถทำได้หากไม่มีผู้ทดสอบ แต่ฉันไม่เคยลองทดสอบเลย ไม่มีเจตนากระทำความผิด
คำตอบ:
จากประสบการณ์ของฉันโชคไม่ดีที่พวกเขามักจะได้รับการปฏิบัติเหมือนพนักงานชั้นสองและยิ่งเลวร้ายยิ่งขึ้นสำหรับโปรแกรมเมอร์
มันเกิดจากหลายสิ่ง:
เมื่อผู้ทดสอบทำงานอย่างถูกต้องมันเป็นเรื่องง่ายสำหรับทุกคน แต่โปรแกรมเมอร์ที่จะลืมพวกเขายังมีอยู่ เหมือนกับผู้ดูแลระบบเครือข่ายคุณสังเกตเห็นพวกเขาเฉพาะเมื่อพวกเขาไม่ทำงานหรือทำไม่ดี ดังนั้นจากมุมมองของส่วนที่เหลือขององค์กรพวกเขาจะถูกจดจำเพียงเพราะความผิดพลาดของพวกเขา
มันถูกมองว่าเป็นงานระดับเริ่มต้นสำหรับผู้ที่ปรารถนาจะเป็นโปรแกรมเมอร์ แต่ยังไม่ผ่านการรับรองสำหรับงานเหล่านั้น ในความเป็นจริงที่ บริษัท หนึ่งฉันทำงานพวกเขาได้รับตำแหน่งงานโปรแกรมเมอร์ Jr. แม้ว่าพวกเขาจะได้รับตำแหน่งงานถาม - ตอบ แม้ว่าข้อเท็จจริงที่ว่าพวกเขาอยู่ในแผนกควบคุมคุณภาพก็ยังไม่เพียงพอที่จะทำให้ฝ่ายทรัพยากรบุคคลขยับเขยื้อนได้
เนื่องจาก # 2 จะถือว่าผู้ทดสอบเป็นบุคคลระดับเริ่มต้นทั้งหมดและควรได้รับเงินตามนั้น
ไม่มีใครชอบถูกวิพากษ์วิจารณ์และเป็นเรื่องธรรมดาที่นักเขียนโปรแกรมป้องกันไม่ชอบผู้ทดสอบเพราะงานของพวกเขาต้องการให้พวกเขาชี้ให้เห็นข้อผิดพลาดของโปรแกรมเมอร์ทุกวัน ในฐานะผู้จัดการฉันมีภารกิจประชาสัมพันธ์อย่างต่อเนื่องเพื่อเตือนโปรแกรมเมอร์ว่าทีมงาน QA อยู่ที่นั่นเพื่อทำให้พวกเขาดูดี
มันมีแนวโน้มที่จะเป็นงานที่ผู้คนเข้ามาโดยไม่ได้ตั้งใจและอย่างน้อยก็ในตอนแรก ฉันจำไม่ได้ว่ามีแผนระดับใดในโรงเรียนที่ฉันเข้าร่วมซึ่งเตรียมผู้คนไว้สำหรับคำถามและคำตอบเกี่ยวกับซอฟต์แวร์ พวกเขามีอยู่จริง แต่โดยปกติแล้วจะอยู่ที่โรงเรียนอาชีวะระดับล่างซึ่งมีส่วนช่วยในความคิดที่ว่าพวกเขาเป็นมืออาชีพที่มีทักษะน้อยกว่า
งานทดสอบมีแนวโน้มมากกว่างานเขียนโปรแกรมที่จะส่งไปต่างประเทศ อย่างน้อยโปรแกรมเมอร์สามารถยืนยันได้ว่ามันมีประสิทธิภาพมากขึ้นในการสื่อสารความต้องการการออกแบบในพื้นที่และเป็นสิ่งที่มีค่าในการรักษาความรู้ว่าแอพเรือธงของ บริษัท ทำงานอย่างไรภายใน บริษัท อย่างไรก็ตามการทดสอบนั้นง่ายกว่ามากในการทำให้เป็นโมดูลและทำให้ง่ายต่อการ outsource
ด้วยเหตุผลทั้งหมดข้างต้นผู้ทดสอบมักจะเห็นการเขียนบนกำแพงและย้ายไปทำงานอื่น (เช่นการเขียนโปรแกรม) โดยเฉพาะอย่างยิ่งสิ่งที่ดีจริงๆ ซึ่งหมายความว่างานทดสอบส่วนใหญ่มีแนวโน้มที่จะได้รับการว่าจ้างจากคนระดับเริ่มต้นที่ยังไม่ได้เผาไหม้หรือย้ายไปทำสิ่งอื่น ๆ ซึ่งน่าเสียดายที่ตอกย้ำแนวคิดดังกล่าวข้างต้น
มันขึ้นอยู่กับ บริษัท แต่โดยปกติแล้ว พวกเขามักจะถูกมองว่าเป็นพลเมืองชั้นสองและในหลาย ๆ บริษัท การทดสอบถูกมองว่าเป็นตำแหน่งระดับเริ่มต้นซึ่งคุณจะมุ่งสู่การเป็นนักพัฒนาที่แท้จริง
แน่นอนนี่เป็นเรื่องไร้สาระ เมื่อได้ทำงานกับผู้ทดสอบที่ดีฉันสามารถพูดได้ว่าพวกเขามีคุณค่าและยากที่จะมา คนที่มีจิตใจที่มีความคิดสร้างสรรค์มากพอที่จะหาข้อบกพร่องที่ไม่ชัดเจนและมีระเบียบพอที่จะทำงานอย่างละเอียด
แม้ว่าจะมีข้อยกเว้นหนึ่งอย่าง: ฉันรู้จักผู้ทดสอบ Microsoft สองสามคนและฉันได้ยินว่าผู้ทดสอบมีพลเมืองชั้นหนึ่ง
ฉันทำงานเป็นผู้ทดสอบฟังก์ชั่นหนึ่งปีสำหรับโครงการขนาดใหญ่พอสมควร แต่ละทีมมีสมาชิกประมาณ 10 คนมี 2-3 คน ฉันต้องบอกว่าเราได้รับการปฏิบัติที่มีความสำคัญเท่าเทียมกันกับโครงการในฐานะผู้พัฒนา
การค้นหาข้อบกพร่องไม่ใช่เรื่องง่าย ขั้นแรกผู้ทดสอบต้องเข้าใจว่าควรใช้รหัสใด นั่นหมายถึงการอ่านและทำความเข้าใจข้อกำหนด ที่สำคัญที่นี่คือการทำความเข้าใจข้อกำหนด - หากผู้ทดสอบไม่สามารถเข้าใจความต้องการได้ดีพอที่จะรู้วิธีการเขียนกรณีทดสอบในเชิงบวกคุณควรกังวล ซึ่งหมายความว่านักพัฒนาได้เขียนโค้ดบางอย่างที่ทำในสิ่งที่พวกเขาคิดเอาไว้ สมมติฐานนี้ถูกต้องหรือไม่ คุณไม่ทราบจนกว่าคุณจะแยกแยะข้อกำหนดและคุณสามารถขอบคุณผู้ทดสอบของคุณสำหรับการค้นหาข้อบกพร่องนั้น
ประการที่สองผู้ทดสอบจะต้องเขียนกรณีทดสอบเท็จซึ่งทำให้แน่ใจได้ว่ารหัสนั้นไม่ใช่สิ่งที่ไม่ควรทำ กฎง่ายๆคือคุณเขียน 5-10 กรณีทดสอบเท็จสำหรับทุกกรณีทดสอบบวก นี่หมายถึงการทำความเข้าใจกับข้อกำหนดเพิ่มเติมและบ่อยครั้งข้อมูลหรืออย่างน้อยก็ในโครงการของเราทำให้เกิดความสับสนและคลุมเครือ (และไม่ใช่เพราะความพยายามเพียงเล็กน้อยในการรวบรวมข้อกำหนด - เรามีบางอย่างที่ 13,000 คนในทีมของเราเท่านั้น) อีกครั้งผู้พัฒนาจะเขียนโค้ดโดยใช้สมมติฐานหรือแย่กว่านั้นคือไม่คิดเลยแม้แต่น้อย ดังนั้นรหัสทำอะไรภายใต้เงื่อนไขเหล่านี้ซึ่งไม่ปกติ? คุณไม่รู้จนกว่าคุณจะทดสอบมัน บางทีโปรแกรมอาจไม่ตอบสนอง บางทีมันอาจจะขัดข้อง บางทีมันอาจทำลายข้อมูล อาจอนุญาตให้ผู้ใช้เรียกใช้คำสั่งในฐานะผู้ใช้รูท คุณต้องการรู้อะไร มิฉะนั้นคุณอาจพบว่าตัวเองกำลังอ่านหัวข้อข่าวต่อไปนี้ในหนังสือพิมพ์หนึ่งวัน - BUG IN [ชื่อ บริษัท ของคุณ] โปรแกรมแสดงความคิดเห็นรั่วไหลของบัตรเครดิตของสมาชิกหมายเลข
ดังนั้นทดสอบผู้ทดสอบของคุณให้ดี ปฏิบัติต่อพวกเขาอย่างดี ท้ายที่สุดพวกเขาคือคนที่กำจัดข้อผิดพลาดในซอฟต์แวร์ของคุณและทำให้ชีวิตของคุณและของเราง่ายขึ้น
ผู้ทดสอบที่ดีที่สามารถวิเคราะห์ปัญหาได้อย่างมีประสิทธิภาพและสามารถทำการทดสอบอัตโนมัติที่เหมาะสมนั้นมีค่าน้ำหนักของพวกเขาในทองคำเนื่องจากมีผู้ทดสอบคาวบอยจำนวนมากอยู่ที่นั่น (เมื่อสัมภาษณ์หนึ่ง "ผู้ทดสอบ" เมื่อเขาหัวเราะออกมาจริง ๆ สิ่งที่เกิดขึ้นในขณะที่ถูก quizzed ในประวัติส่วนตัวของเขา)
ในทีมของฉันผู้ทดสอบได้รับการปฏิบัติอย่างเท่าเทียมกันซึ่งรวมถึงความรับผิดชอบและเงินเดือน หากคุณต้องการให้ผู้ทดสอบที่คลิกทุกวัน - จ้างบุคคลภายนอกจากที่อื่นไปให้ถูก (เราก็ทำเช่นนั้น)
อัปเดตหลังจากอ่านคำตอบอื่น ๆ : มีผู้เชี่ยวชาญ QA จำนวนมากที่รักงานที่ทำ เพียงเพื่อให้มุมมองอื่นหากคุณยังไม่ได้พบตำแหน่ง QA ที่น่าเคารพนับถือตัวอย่างหนึ่งที่นี่: แอปแบบฝังตัว / การทดสอบแอพมือถือสำหรับผู้ผลิตรถยนต์ชั้นนำ พวกเขาทำให้แน่ใจว่าเป็นไปตามข้อกำหนดทางธุรกิจอย่างสมบูรณ์ก่อนที่รถจะออกสู่ตลาดและไม่มีผู้ใช้พบกับแดชบอร์ดรถที่ช้าหรือไม่ตอบสนอง พวกเขาทำงานอย่างใกล้ชิดกับผู้จัดการและผู้บริหารระดับสูงกว่าและนักพัฒนาเริ่มต้นจากการวางแผนกระบวนการ QA เพื่อการทดสอบภาคปฏิบัติในเครื่องจำลองการออกแบบจริง ฉันไม่สามารถนึกได้ว่าพวกเขามีรายได้น้อยพวกเขาจัดการกับความรับผิดชอบและความเป็นเจ้าของมากมายและพวกเขาก็เป็นหนึ่งในวิศวกรที่ดีที่สุด
ตอนนี้คำตอบก่อนหน้าของฉันด้านพลิก:
ฉันสังเกตว่าผู้สำเร็จการศึกษาด้านวิศวกรรมเกลียดการจัดสรรให้กับหน่วยทดสอบ (บริบท: อินเดียซึ่งเป็น บริษัท ให้บริการซอฟต์แวร์ขนาดใหญ่ที่ทุกอย่างถูกขับเคลื่อนด้วย 'ความต้องการทางธุรกิจ') เนื่องจากพวกเขาคิดว่าเป็นสภาพแวดล้อมการทำงานที่ไม่ใช่ด้านเทคนิค พวกเขาจะได้รับแผ่นงาน Excel พร้อมคำแนะนำเช่น 'คลิกลิงก์ทั้งหมดในหน้าเว็บและยืนยัน' ถูกบังคับให้ทำงานกับผู้สำเร็จการศึกษาจากสาขาที่ไม่ใช่ด้านเทคนิค (วิทยาศาสตร์ศิลปะ) ซึ่งพวกเขาคิดว่าเป็นความอัปยศอดสูและรู้สึกว่าทักษะด้านเทคโนโลยีของพวกเขาไม่ใช่ ใช้ การจัดสรรเหล่านี้ขึ้นอยู่กับความต้องการขององค์กรอย่างแท้จริงและส่วนใหญ่ที่สดใหม่ไม่มีอำนาจในการต่อรองเส้นทางอาชีพของเขา ดังนั้นหากคุณเป็นผู้หางานที่มี บริษัท ไอทีขนาดใหญ่เช่นนี้คุณถูกเตือน คุณไม่สามารถทำอะไรได้มากนักยกเว้นการออกจาก บริษัท ในเวลาที่เหมาะสม
หากไม่มีโอกาสที่จะเรียนรู้การทดสอบอัตโนมัติการทดสอบโหลด / ประสิทธิภาพการทำงานอื่น ๆ อาชีพก็ยังคงอยู่ในระดับเดิมส่วนใหญ่ฉันรู้ว่าโอกาสในการมอบหมายงานนอกสถานที่ (= โหลดเงินจากมุมมองโปรแกรมเมอร์นอกชายฝั่ง) มีมากขึ้นสำหรับหน่วยทดสอบ องค์กรของฉันมากกว่าหน่วยอื่น ๆ พวกเขาทำงานร่วมกับกลุ่มอุตสาหกรรมทั้งหมดในฐานะฟิลเลอร์หรือกาวเนื่องจากการทดสอบนั้นหลีกเลี่ยงไม่ได้ในโครงการในทุกโดเมน
หากคุณมั่นใจว่าคุณสามารถขับเคลื่อนอาชีพของคุณในแบบที่คุณต้องการการทดสอบนั้นไม่มีอะไรน่าสนใจ ด้วยประสบการณ์ 4-5 ปีและโชคเล็กน้อยคุณจะได้รับสิ่งที่ดีมากบางครั้งก็มีปฏิสัมพันธ์กับผู้ใช้ทางธุรกิจระดับบนสุด คุณสามารถเข้าใจอุตสาหกรรม / โดเมนที่คุณทำงานอยู่ได้ดี (เมื่อเทียบกับนักพัฒนาซอฟต์แวร์ที่มุ่งเน้นไปที่บางส่วนของระบบ) ณ จุดนี้เราสามารถเลือกที่จะเปลี่ยนไปเป็นนักวิเคราะห์ธุรกิจได้เช่นกัน
ฉันรู้จัก บริษัท ที่ทีม QA รับผิดชอบในการเผยแพร่ ซึ่งหมายความว่าพวกเขามีอำนาจในการบล็อกการเปิดตัวเนื่องจากขาดคุณภาพ หากมีการรายงานปัญหาในฟิลด์พวกเขาจะเป็นคนแรกในสายเพลิง (ดีหลังจากวิศวกรภาคสนาม)
โดยทั่วไปแล้วพวกเขามีความรู้โดเมนที่สูงขึ้น พวกเขามักจะรู้ว่าฟังก์ชั่นโดยรวมของผลิตภัณฑ์ดีขึ้นในขณะที่นักพัฒนามุ่งเน้นไปที่โมดูล / คุณสมบัติของพวกเขา
นอกจากนี้ฉันรู้เกี่ยวกับองค์กรคุณภาพที่พวกเขาต้องเขียนเครื่องมือทดสอบของตัวเอง ไม่พูดถึงเรื่องทั้งหมดโดยอัตโนมัติ ฉันเป็นนักพัฒนาและให้ความสำคัญกับพวก QA ที่ทดสอบคุณสมบัติของฉันเสมอ
อย่างน้อยที่สุดในองค์กรของฉัน QA ได้รับการปฏิบัติอย่างเท่าเทียมกับผู้พัฒนา ฉันคิดว่าเป็นเพราะโดเมน (เทเลคอม) ที่ความรู้เกี่ยวกับโปรโตคอลและเครือข่ายสถาปัตยกรรมมีมูลค่าเท่ากันกับทักษะการเขียนโปรแกรม
ใช่. ชอบหรือทิ้งไว้พวกเขามีความสำคัญเท่าเทียมกัน แต่เป็นที่ต้องการน้อยกว่าเสมอ อาจเป็นเพราะง่ายต่อการเปลี่ยน