JavaRush /จาวาบล็อก /Random-TH /วิธีเริ่มต้นการทดสอบอัตโนมัติ ตอนที่ 1

วิธีเริ่มต้นการทดสอบอัตโนมัติ ตอนที่ 1

เผยแพร่ในกลุ่ม
เราขอเชิญคุณอ่านบทความที่ดัดแปลงมาจากภาษารัสเซียโดย Tim Ebie ผู้ก่อตั้งhttps://testdemy.teachable.com/ซึ่งเป็นแพลตฟอร์ม QA สำหรับการทดสอบซอฟต์แวร์ออนไลน์ สร้างขึ้นเพื่อช่วยผู้ที่กำลังเริ่มต้นการเดินทางในการทดสอบอัตโนมัติ
วิธีเริ่มต้นการทดสอบอัตโนมัติ ตอนที่ 1 - 1
เราเห็นความสนใจและการเติบโตที่เพิ่มขึ้นของจำนวนเว็บแอปพลิเคชันในตลาด ส่งผลให้มีงานที่ต้องใช้การเขียนโปรแกรม ทักษะทางเทคนิค และทักษะด้านระบบอัตโนมัติต่างๆ เพิ่มมากขึ้นเรื่อยๆ ด้วยเหตุนี้ ผู้ทดสอบด้วยตนเองจึงเห็นความจำเป็นในการเปลี่ยนจากการทดสอบด้วยตนเองเป็นการประกันคุณภาพ (QA) และกำลังมองหาการทดสอบอัตโนมัติเพื่อให้ยังคงเป็นที่ต้องการ การเปลี่ยนจากการทดสอบด้วยตนเองเป็นแบบอัตโนมัติเป็นทางเลือกที่ชาญฉลาด เนื่องจากตำแหน่ง QA จำนวนมากต้องการทักษะทางเทคนิคที่เกี่ยวข้องกับการเขียนโค้ด สำหรับผู้ที่ไม่ชอบการเปลี่ยนแปลง การเปลี่ยนแปลงดังกล่าวอาจทำให้อึดอัดได้ ในทางกลับกัน นักพัฒนารายอื่นๆ มองว่า "ช่วงเวลาแห่งการเปลี่ยนแปลง" นี้เป็นโอกาสในการยกระดับอาชีพและทักษะของตนไปอีกระดับ และเพิ่มความเกี่ยวข้องของพวกเขา ทุกครั้งที่ความต้องการเพิ่มขึ้น ความเป็นไปได้ก็จะขยายออกไป นักพัฒนาที่มีทักษะที่เหมาะสมสามารถก้าวกระโดดและมีอาชีพที่ดีและมีรายได้ดี หากคุณต้องการเปลี่ยนจากการทดสอบด้วยตนเองไปสู่ระบบอัตโนมัติ หรือแม้แต่พิจารณาย้ายจากสาขาการพัฒนาซอฟต์แวร์อื่น ก็สมเหตุสมผลที่จะดำเนินการสองสามขั้นตอนเพื่อช่วยให้คุณประสบความสำเร็จ

ขั้นตอนที่ 1: การประเมินตลาด

“นิสัยหมายเลขสอง” จากหนังสือ “7 นิสัยของผู้ที่มีประสิทธิภาพสูง” ของดร. สตีเฟน เอ. โควีย์กล่าวว่า “เริ่มต้นด้วยจุดมุ่งหมายในใจ” ฉันเชื่อว่าหลักการนี้เป็นจริงเมื่อต้องเริ่มต้นการทดสอบอัตโนมัติ เริ่มต้นด้วยการประเมินตลาดเกี่ยวกับความต้องการของผู้ที่จ้างวิศวกรระบบอัตโนมัติ เมื่อคุณเข้าใจความต้องการด้านเทคนิคของนายจ้างแล้ว คุณก็จะได้รับทักษะที่เหมาะสม จุดเริ่มต้นที่ดีคือการดูคำอธิบายลักษณะงานบนเว็บไซต์ต่างๆ (เช่นIndeed.com , Dice , Monster , LinkedInฯลฯ)
วิธีเริ่มต้นการทดสอบอัตโนมัติ ตอนที่ 1 - 2
นี่คือตัวอย่างของคำค้นหาที่สามารถใช้ในการสร้างมูลค่าตลาด:
  • วิศวกรทดสอบระบบอัตโนมัติ
  • นักพัฒนาระบบอัตโนมัติ
  • การทดสอบอัตโนมัติ/เครื่องทดสอบ (การทดสอบอัตโนมัติ) (การทดสอบอัตโนมัติ/เครื่องทดสอบอัตโนมัติ);
  • วิศวกรระบบอัตโนมัติ QA ;
  • วิศวกรพัฒนาซอฟต์แวร์ในการทดสอบ (SDET)
เพื่อทำความเข้าใจว่านายจ้างคิดอย่างไรและคาดหวังอะไรจากผู้สมัครจริงๆ โปรดคำนึงถึงคำถามต่อไปนี้เมื่อคุณค้นหา:
  • พวกเขากล่าวถึงทักษะและเทคโนโลยีเฉพาะด้านใดบ้าง
  • คุณเห็นชุดหรือ "บล็อก" ของทักษะหรือเทคโนโลยีที่แยกจากกันสำหรับทักษะเหล่านี้หรือไม่
  • ต้องใช้ประสบการณ์กี่ปี ถ้ามี?
  • มีอุตสาหกรรมบางประเภทที่มีแนวโน้มที่จะจ้างวิศวกรระบบอัตโนมัติมากกว่าอุตสาหกรรมอื่นหรือไม่?
  • คุณสามารถคาดหวังเงินเดือนเท่าไร?
  • เครื่องมือหรือเทคโนโลยีที่เราสนใจคือผลิตภัณฑ์ที่มีการเข้าถึงแบบเปิดหรือเชิงพาณิชย์เป็นหลักหรือไม่
ตอนนี้เรามาดูคำอธิบายลักษณะงานให้ละเอียดยิ่งขึ้นเพื่อดูว่าตลาดกำลังมองหาอะไร โปรดทราบว่างานดังกล่าวตั้งอยู่ในสหรัฐอเมริกา หากคุณไม่ได้อาศัยอยู่ในสหรัฐอเมริกา โปรดตรวจสอบเครื่องมือค้นหางานในประเทศของคุณ นักพัฒนาซอฟต์แวร์อัตโนมัติฉัน:
  • มีความเข้าใจที่ชัดเจนเกี่ยวกับภาษาโปรแกรมเชิงวัตถุ
  • คุ้นเคยกับJenkins , การทดสอบเสร็จสมบูรณ์, VersionOne, Git, Visual Studio, Oracle, MSSQL, Hyper-V, AQTime;
  • ทำงานอย่างใกล้ชิดกับนักพัฒนา นักวิเคราะห์ธุรกิจ และผู้ทดสอบอื่นๆ เพื่อระบุส่วนประกอบการทดสอบอัตโนมัติที่จะใช้เพื่อตรวจสอบข้อกำหนดสำหรับซอฟต์แวร์ที่พัฒนาขึ้น
วิธีเริ่มต้นการทดสอบอัตโนมัติ ตอนที่ 1 - 3
ผู้ทดสอบ QA (การทดสอบอัตโนมัติ):
  • บันทึกการทดสอบอัตโนมัติในระบบควบคุมเวอร์ชันที่เหมาะสม - TFS, GitHubฯลฯ
  • เป็นไปตามมาตรฐานระบบอัตโนมัติที่กำหนดไว้ล่วงหน้าและ มาตรฐาน DevOpsสำหรับระบบอัตโนมัติ ตลอดจนกระบวนการบูรณาการและปรับใช้อย่างต่อเนื่อง
  • มีประสบการณ์กับเครื่องมือ ALM (TFS, Jira, HP QC) และเครื่องมือทดสอบอัตโนมัติ (โดยเฉพาะ Selenium WebDriver )
วิศวกรระบบอัตโนมัติประกันคุณภาพ - QA ( วิศวกรระบบประกันคุณภาพอัตโนมัติ ):
  • มีประสบการณ์กับSelenium WebDriver ;
  • ทักษะการเขียนโปรแกรมใน Python, Javaหรือภาษาที่คล้ายกัน
  • ประสบการณ์การทดสอบมือถือ/ Appium
ผู้พัฒนาซอฟต์แวร์ทดสอบ:
  • อัปเดตและขยาย สภาพแวดล้อมการทดสอบและเครื่องมือทดสอบในC#, TypeScript, JavaScript ...;
  • ทักษะการเขียนโปรแกรมที่แข็งแกร่งใน C# หรือ Java และ/หรือ JavaScriptพร้อมด้วยความเข้าใจที่ชัดเจนเกี่ยวกับ แนวคิด การเขียนโปรแกรมเชิงวัตถุ
  • มีประสบการณ์กับ Visual Studio, Subversion, GitHub, Unity, Teamcity, Jira Cloud, Confluence
วิธีเริ่มต้นการทดสอบอัตโนมัติ ตอนที่ 1 - 4
ต่อไปนี้เป็นประเด็นสำคัญบางประการจากคำอธิบายลักษณะงานเหล่านี้ บทบาทแบบผสมผสาน/แบบผสมผสาน:ให้ความสำคัญกับตำแหน่งงานและวิธีที่บริษัทเหล่านี้มองการทดสอบซอฟต์แวร์อัตโนมัติ สิ่งนี้สามารถเห็นได้จากชื่อของบทบาทที่พวกเขาแสดง (นักพัฒนาซอฟต์แวร์อัตโนมัติ, นักพัฒนาซอฟต์แวร์ในการทดสอบ ฯลฯ สังเกตเห็นรูปแบบหรือไม่ บริษัทเหล่านี้เรียกวิศวกร QA ว่าเป็นนักพัฒนาซอฟต์แวร์ไม่มากก็น้อย: สำหรับผู้ทดสอบด้วยตนเองหมายความว่าถึงเวลาที่จะต้อง เรียนรู้วิธีเขียนโค้ดเพื่อเปลี่ยนกรณีการทดสอบแบบแมนนวลให้เป็นสคริปต์การทดสอบแบบอัตโนมัติ สำหรับ Developer ที่ต้องการเข้าสู่การทดสอบแบบอัตโนมัติ หมายความว่าคุณควรเรียนรู้เพิ่มเติมเกี่ยวกับวิธีการทดสอบซอฟต์แวร์ ซอฟต์แวร์วงจรชีวิตการทดสอบ และเรียนรู้วิธีสร้างกรณีทดสอบอัตโนมัติเพื่อรองรับ วงจรชีวิตเหล่านี้ อย่าพลาดการเปลี่ยนแปลงที่สำคัญนี้ ไม่เช่นนั้น คุณจะตามไม่ทัน ด้วยการเพิ่มขึ้นของวิธีการแบบ Agile และโครงการแบบ Agile องค์กรต่างๆ จำนวนมากขึ้นเรื่อยๆ กำลังผสมผสาน QA และ Developer ให้เป็นหนึ่งเดียว ถึงเวลาแล้วที่คุณจะต้องเตรียมตัวสำหรับ ความรับผิดชอบใหม่ บุคคลที่ได้รับการฝึกอบรมขั้นพื้นฐานในโลกแห่งการทดสอบซอฟต์แวร์และในขณะเดียวกันก็มีความเข้าใจทักษะของนักพัฒนาซอฟต์แวร์เป็นอย่างดีนั้นคุ้มค่าดั่งทองคำ เทคโนโลยีโอเพ่นซอร์ส/ภาษาการเขียนโปรแกรม:โปรดทราบว่าเทคโนโลยีและภาษาการเขียนโปรแกรมที่เน้นด้วยตัวหนาในคำอธิบาย เทคโนโลยีและภาษาเหล่านี้มีเป้าหมาย คุณต้องเรียนรู้เพื่อให้เป็นที่ต้องการในตลาด เลือกเทคโนโลยีที่มีความต้องการสูงและเริ่มสร้างทักษะของคุณด้วยการฝึกฝนและเข้าร่วมในแอปพลิเคชันและโครงการในโลกแห่งความเป็นจริง สิ่งนี้จะช่วยเร่งการเรียนรู้ของคุณ หากคุณไม่แน่ใจว่าจะเริ่มต้นด้วยภาษาการเขียนโปรแกรม ใด เรามาจำกัดขอบเขตให้แคบลงสักหน่อย

ขั้นตอนที่ 2: เชี่ยวชาญภาษาการเขียนโปรแกรมเชิงวัตถุ (OOP)

ยอมรับเถอะว่าผู้ทดสอบแบบแมนนวลส่วนใหญ่กลัวการเขียนโปรแกรม ความคิดที่ว่าจะต้องซ่อนตัวและดูว่าระบบและแอปพลิเคชันทำงานอย่างไรจริง ๆ ทำให้ผู้ทดสอบด้วยตนเองหลายคนกลัว ความกลัวนี้เป็นเหตุผลหลักว่าทำไมพวกเขาถึงกลายเป็นผู้ทดสอบด้วยตนเอง
วิธีเริ่มต้นการทดสอบอัตโนมัติ ตอนที่ 1 - 5
การเขียนโปรแกรมเป็นพื้นฐานของการทดสอบอัตโนมัติ หากคุณต้องการเข้าสู่การทดสอบระบบอัตโนมัติ คุณจะต้องสามารถเขียนโค้ดได้ และยิ่งคุณเขียนโปรแกรมได้ดีเท่าไร คุณก็จะยิ่งประสบความสำเร็จในการทดสอบระบบอัตโนมัติหรือการพัฒนาระบบอัตโนมัติมากขึ้นเท่านั้น ดังนั้น หากคุณต้องการรักษาความสามารถในการแข่งขันในโลกของการพัฒนาและเทคโนโลยีที่เปลี่ยนแปลงตลอดเวลา คุณต้องมุ่งมั่นที่จะเอาชนะความกลัวนี้และกลายเป็นนักพัฒนาการทดสอบอัตโนมัติที่เป็นที่ต้องการ สิ่งที่ดีก็คือด้วยคำแนะนำเพียงเล็กน้อยจากเพื่อนร่วมงานที่มีประสบการณ์มากกว่า การใช้ความพากเพียรและความอุตสาหะ ฝึกฝนอย่างต่อเนื่อง (เช่นเดียวกับที่เราทำที่ JavaRush) คุณสามารถพัฒนาทักษะการเขียนโปรแกรมของคุณได้อย่างแน่นอน คำถามเชิงตรรกะถัดไปคือ ฉันควรเรียนรู้ภาษาโปรแกรมอะไร จากการประเมินตลาดของเรา เรารู้ว่าผู้จ้างงานต้องการจ้างบุคลากร "ที่มีความเข้าใจในภาษาการเขียนโปรแกรมเชิงวัตถุ" และจากการวิเคราะห์ของเรา เราสามารถเห็นภาษาการเขียนโปรแกรมเชิงวัตถุหลายภาษาที่พวกเขาอ้างถึง ตัวอย่างเช่น Java, C#, JavaScript และ Python คุณสามารถเริ่มต้นด้วยสิ่งใดก็ได้ หากคุณกำลังเริ่มเรียนรู้ภาษา OOP ต่อไปนี้เป็นแนวคิดบางประการที่จะช่วยให้คุณมีความเชี่ยวชาญในการทดสอบอัตโนมัติมากขึ้น:
  • การเขียนโปรแกรมเชิงวัตถุ (คลาส วัตถุ อินสแตนซ์ การสืบทอด คุณลักษณะ ฯลฯ)
  • โมดูล, ไลบรารีมาตรฐาน (ในภาษาใดก็ตามที่คุณเลือก);
  • โครงสร้างข้อมูล (พจนานุกรม รายการ สิ่งอันดับ ฯลฯ );
  • ประเภทข้อมูล (สตริง อักขระ จำนวนเต็ม จุดลอยตัว ประเภทลอจิคัลหรือบูลีน ไม่มีประเภท ฯลฯ );
  • ตัวแปร;
  • การจัดการข้อผิดพลาด/ข้อยกเว้น
  • ตัวดำเนินการทางคณิตศาสตร์/ลำดับความสำคัญ
  • การเปรียบเทียบ ตัวดำเนินการบูลีนเชิงตรรกะ
  • ขั้นตอน/หน้าที่/วิธีการ
  • โฟลว์การควบคุม: คำสั่ง If, for loops, while loops ฯลฯ
  • อ่าน/เขียนไฟล์;
การเขียนโปรแกรมเป็นพื้นฐานของการทดสอบอัตโนมัติ เรียนรู้การเขียนโปรแกรมและคุณจะได้เรียนรู้การทำให้เป็นอัตโนมัติ

ขั้นตอนที่ 3: การเรียนรู้เครื่องมืออัตโนมัติอย่างเชี่ยวชาญ

ฉันพูดแบบนี้อยู่เรื่อย: ยิ่งคุณเขียนโปรแกรมได้ดีเท่าไหร่ คุณก็ยิ่งสามารถทำให้เป็นอัตโนมัติได้ดีขึ้นเท่านั้น เมื่อคุณเริ่มเรียนรู้ภาษาการเขียนโปรแกรมแล้ว ขั้นตอนต่อไปคือการเรียนรู้วิธีใช้เครื่องมืออัตโนมัติ เนื่องจากบริษัทส่วนใหญ่หันไปใช้เครื่องมืออัตโนมัติแบบโอเพ่นซอร์ส (หรือซอฟต์แวร์ฟรี) มากกว่าผลิตภัณฑ์ที่ได้รับอนุญาตเชิงพาณิชย์ด้วยเหตุผลด้านต้นทุน
วิธีเริ่มต้นการทดสอบอัตโนมัติ ตอนที่ 1 - 6
เครื่องมือที่ยอดเยี่ยมที่สามารถพบได้ในโดเมนสาธารณะคือ Selenium WebDriver Selenium มีการผูกภาษาหลายภาษา (Python, Java, C#, Ruby, PHP, JavaScript ฯลฯ ) ดังนั้นการเรียนรู้ภาษาการเขียนโปรแกรมภาษาใดภาษาหนึ่งเหล่านี้จะเป็นรากฐานที่ดีเยี่ยมสำหรับการสร้างอาชีพที่มั่นคงในด้านระบบอัตโนมัติ แนวคิดสำคัญบางประการที่คุณต้องเชี่ยวชาญเพื่อสร้างกรณีทดสอบอัตโนมัติที่เชื่อถือได้ ใช้งานได้จริง และมีประสิทธิภาพ:
  • รูปแบบการออกแบบ: โมเดลออบเจ็กต์หน้า
  • ค้นหาองค์ประกอบหน้าเว็บโดยใช้ตัวระบุตำแหน่งที่แตกต่างกัน (ตัวเลือก CSS, XPATH, ID, ชื่อ ฯลฯ )
  • สลับ Windows/iFrames;
  • การปรับโครงสร้างใหม่;
  • การทดสอบหน่วย
  • การทดสอบระบบคลาวด์/การทดสอบแบบขนาน
  • การตรวจสอบข้อมูล
  • การทดสอบบนเว็บเบราว์เซอร์ต่างๆ (Firefox, Internet Explorer, Chrome, Safari, Opera ฯลฯ );
  • ความคาดหวังโดยนัยและชัดเจน
  • ห่วงโซ่ของการกระทำ
หากคุณเลือกภาษาการเขียนโปรแกรมเชิงวัตถุและใช้เครื่องมืออัตโนมัติในการประเมินตลาด ขั้นตอนต่อไปคือ... คุณจะคิดอย่างไร...

ขั้นตอนที่ 4: ฝึกฝน ฝึกฝน ฝึกฝน

ทำอะไรก็ไม่เคยเลิก การเรียนรู้สิ่งใหม่ ๆ เป็นสิ่งที่ท้าทายเสมอ แต่ทุกความท้าทายสามารถเอาชนะได้ด้วยการฝึกฝนและความทุ่มเทที่เพียงพอ ใช้เวลานานแค่ไหนในการเรียนรู้ทักษะและเทคโนโลยีใหม่ๆ ขึ้นอยู่กับคุณ และคุณทุ่มเทฝึกฝนและทุ่มเทมากเพียงใดในการเรียนรู้ทักษะเหล่านั้น
วิธีเริ่มต้นการทดสอบอัตโนมัติ ตอนที่ 1 - 7
นักกีฬามืออาชีพคนใดก็ตามจะบอกว่าเขาหรือเธอมาถึงจุดสูงสุดของการเดินทางแล้วด้วยการทำงานและความพยายามในการฝึกฝน ว่ากันว่า Michael Jordan เล่นหนัก แต่ฝึกฝนหนักยิ่งกว่านั้น แนวทางนี้ควรนำมาใช้โดยใครก็ตามที่ต้องการทำให้เป็นอัตโนมัติ - ฝึกฝน ฝึกฝน ฝึกฝนทักษะใหม่ๆ ของคุณจนกว่าทักษะเหล่านั้นจะกลายเป็นธรรมชาติ นี่เป็นวิธีเดียวที่จะพัฒนาทักษะของคุณและเป็นที่ต้องการของผู้ทดสอบ หนึ่งในวิธีที่ดีในการฝึกฝนคือการเรียนรู้ภาษาการเขียนโปรแกรมและเครื่องมืออัตโนมัติไปพร้อมๆ กับการ "เล่น" กับพวกเขา กล่าวอีกนัยหนึ่ง เขียนโปรแกรมขนาดเล็กหรือสคริปต์ทดสอบอัตโนมัติ ทำลาย เปลี่ยนแปลง และดูวิธีการทำงานทันที เรียนรู้จากสิ่งที่คุณทำแล้วลองอีกครั้ง ฝึกฝนด้วยการเล่น ลงมือทำ และเรียนรู้ ทำเช่นนี้แล้วเส้นโค้งการเรียนรู้ของคุณจะเพิ่มขึ้น

ถึงเวลาเริ่มต้น

สิ่งที่สำคัญที่สุดในธุรกิจใหม่คือการเริ่มต้น ทุกครั้งที่เราผัดวันประกันพรุ่งหรือล้มเหลวในการเริ่มต้น เป็นเพราะเราไม่มีแผนหรือแผนเกมที่จะช่วยกำหนดเส้นทางของเรา
วิธีเริ่มต้นการทดสอบอัตโนมัติ ตอนที่ 1 - 8
แม้ว่าการพยายามเปลี่ยนทิศทางอาชีพของคุณอย่างรุนแรงอาจดูน่ากลัว แต่การมีคุณค่าและสามารถทำตลาดได้ถือเป็นสิ่งสำคัญ คุณต้องพัฒนาทักษะใหม่ๆ เพื่อก้าวตามโลกแห่งการพัฒนาซอฟต์แวร์ที่เปลี่ยนแปลงตลอดเวลา และเป็นสิ่งที่ผู้จ้างงานกำลังมองหาจริงๆ เริ่มต้นจากเล็กๆ น้อยๆ: ประเมินความต้องการของตลาด เรียนรู้การเขียนโปรแกรมเชิงวัตถุและเครื่องมืออัตโนมัติ และฝึกฝนอย่างต่อเนื่อง และคุณจะเตรียมพร้อมสำหรับโอกาสในการทำงานใหม่ ๆ ก่อนที่คุณจะรู้ตัว ที่มา: https://simpleprogrammer.com/2017/07/28/start-automation-testing-part-1/
ความคิดเห็น
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION