🔥 ใครอยู่ทีมไหนกันบ้างงงงง ??? บอกแอดกันหน่อยสิ !
.
⭐ JavaScript
เป็นภาษาโปรแกรมมิ่งที่ฮิตที่สุดในการนำมาทำ Automate Testing แถมยังรองรับการพัฒนาแอปพลิเคชันทางฝั่ง Front-end ได้ดีอีกด้วย นิยมใช้ในเว็บไซต์ขนาดใหญ่หลายแห่ง เช่น Instagram, Accenture, Airbnb และ Slack สามารถทำงานร่วมกับ Selenium ได้ดีมาก และมี Framework สำหรับช่วยในการทำทดสอบแบบ Uni test และ end-to-end เช่น Zest, Mocha, Jasmine, Nightwatch JS เป็นต้น
.
⭐ Python
ได้รับความนิยมมากเช่นกัน เป็นภาษาแบบ Open-Source ใช้งานด้าน Machine Larning, Network Servers, และ Media Tools เป็นต้น แอปพลิเคชันยอดฮิตที่ใช้ Python พัฒนา ได้แก่ Youtube, Pinterest และ Instagram แถมยังมี Library มากมายที่ช่วย Dev ให้ทำงานง่ายขึ้น เรียนรู้ง่าย มี Selenium-Appium Libraries ทำให้การทำ Automate Testing ง่ายขึ้น รองรับการ Test แบบ Cross-Platform
.
⭐ Java
เป็น Object-Oriented Language องค์กรต่าง ๆ ใช้ Java เพื่อรักษาระบบ Back-end ทำงานร่วมกับ Selenium ได้อย่างมีประสิทธิภาพ ซึ่งใช้ในการทดสอบเว็บแอปแบบอัตโนมัตินั่นเอง นิยมใช้ในเว็บไซต์ดัง ๆ เช่น Netflix, Google, Pinterest, และ Instagram เป็นต้น รองรับการทำ Short Test ได้ดี
.
⭐ C#
C# ถูกสร้างโดย Microsoft ถือเป็นหนึ่งในภาษาการเขียนโปรแกรมอัตโนมัติที่ดีที่สุด มี Framework สำหรับการทำ Automate Testing มากมาย เช่น NUnit, MSTest และ xUnit.Net รองรับการทดสอบแบบ Cross-Platform ทำงานร่วมกับ Selenium ได้ดี บริษัทดัง ๆ ที่นิมยมใช้ Java ได้แก่ Delivery Hero, Microsoft และ Accenture
.
⭐ PHP
ภาษาสคริปต์ฝั่งเซิร์ฟเวอร์ที่ใช้สำหรับการพัฒนาเว็บและ Automate Testing มี Framework ที่ช่วยในการ Testing มากมาย เช่น BeHat, Codeception, Laravel Dusk, และ PHPUnit แถมยังมีความยืดหยุ่นและสามารถเชื่อมโยงกับ HTML /HTML5 ได้อย่างง่ายดาย เป็นภาษาที่ไม่ขึ้นกับแพลตฟอร์มใด ๆ
.
⭐ Ruby
ทำงานได้ดีกับ Selenium Framework มีสภาพแวดล้อมที่รองรับการทำ Automate Testing เว็บไซต์ยอดนิยมที่ใช้ Ruby ได้แก่ Twitter, Bloomberg, Airbnb และ Shopify ภาษาที่เรียนรู้ได้ง่าย รองรับสถาปัตยกรรม MVC
.
borntoDev - 🦖 สร้างการเรียนรู้ที่ดีสำหรับสายไอทีในทุกวัน
「end-to-end test framework」的推薦目錄:
end-to-end test framework 在 BorntoDev Facebook 八卦
อยากจะทำ Automate Testing ให้ถึงพริกถึงขิง ไม่รู้จัก Automate Testing Framework ไม่ได้เน้ววว 🔥
.
และวันนี้แอดจะพาเพื่อน ๆ มารู้จักกับ Framework ที่เขาใช้ทำ Automate Testing ซึ่งจะมีรายละเอียดยังไง ไปติดตามกันได้ในโพสต์นี้เลย !! ~
.
✏️ ก่อนอื่นเรามาทำรู้จักกับ Automate Testing Framework กันก่อน
.
Automate Testing Framework เป็นแนวทางสำหรับการออกแบบการทดสอบ ซึ่งจะช่วยให้เราสามารถใช้ทรัพยากรในการทดสอบซอฟต์แวรได้อย่างมีประสิทธิภาพมากขึ้นนั่นเอง
.
🔹 ทำไมถึงต้องใช้ Automate Testing Framework ?
.
เจ้า Automate Testing Framework จะมาช่วยเพิ่มประสิทธิภาพและความเร็วในการทดสอบซอฟต์แวร์ของเราได้มากขึ้น อีกทั้งยังช่วยปรับปรุงความแม่นยำในการทดสอบให้เพิ่มมากขึ้นอีกด้วย
.
Linear Scripting Framework
.
เป็นวิธีทดสอบที่ง่ายที่สุด ใช้แนวคิด “record and playback” โดยจะรัน Test Script เพื่อทำการทดสอบตามขั้นตอนที่วางแผนไว้ตามลำดับ และจะบันทึกผลลัพธ์ของแต่ละขั้นตอนไปพร้อมกัน เหมาะกับการทดสอบซอฟต์แวร์ขนาดเล็ก เช่น User Interface บนหน้าเว็บแอปพลิเคชัน
.
👍 ข้อดี
🔹 สร้าง Test Script ได้รวดเร็ว ไม่ต้องใช้เวลานานในการวางแผน
🔹 ผู้ทดสอบไม่จำเป็นต้องมีความรู้ด้าน Coding
🔹 ทดสอบได้รวดเร็ว
.
⚠️ ข้อพิจารณา
🔸 หากโปรแกรมมีการอัปเดตจะต้องเปลี่ยนแปลง Test Script
🔸 บำรุงรักษาได้ยาก หากโปรแกรมมีการขยายจะไม่สามารถเพิ่มขอบเขตในการทดสอบได้
.
Modular Testing Framework
.
เป็นการทดสอบแบบแยกส่วน ซึ่งจะต้องแบ่งการทดสอบออกเป็นหน่วย ฟังก์ชัน หรือโมดูลเล็ก ๆ โดยแต่ละส่วนจะทดสอบแยกกัน และสามารถรวมกันเพื่อสร้าง Test Script ที่ใหญ่ขึ้นได้ในภายหลัง เช่น การทดสอบแบบ End-to-End
.
👍 ข้อดี
🔹 ยืดหยุ่นและสามารถบำรุงรักษาได้ง่าย เนื่องจากแบ่งการทดสอบออกเป็นหน่วยเล็ก ๆ
🔹 สามารถเขียน Test Script ได้อย่างอิสระ
🔹 การเปลี่ยนแปลงของฟังก์ชันหนึ่งจะไม่กระทบกับการทดสอบอื่น ๆ
.
⚠️ ข้อพิจารณา
🔸 ใช้เวลามากในการวางแผนและสร้าง Test Case
🔸 ต้องใช้ทักษะในการ Coding
.
Library Architecture Testing Framework
.
เป็นการทดสอบแบบแยกส่วน โดยจะแบ่งกลุ่มฟังก์ชันต่าง ๆ ของแอปพลิเคชันที่จะทำการทดสอบและเก็บไว้ภายใน Library ฟังก์ชันที่คล้าย ๆ กันจะถูกจัดอยู่ในกลุ่มเดียวกัน ซึ่งจะสามารถใช้ Test Script เดียวกันได้นั่นเอง
.
👍 ข้อดี
🔹 ใช้ Test Script ซ้ำกันได้
🔹 ปรับขนาดได้อย่างยืดหยุ่น
.
⚠️ ข้อพิจารณา
🔸 ใช้เวลานานในการเตรียม Test Script
🔸 ผู้ทดสอบจำเป็นต้องมีทักษะ Coding
.
Data Driven Testing Framework
.
เป็นการทดสอบโดยจะแยก Logic Script และข้อมูลการทดสอบออกจากกัน โดยชุดข้อมูลจะถูกเก็บไว้ในไฟล์ต่าง ๆ เช่น MS Excel Sheets, MS Access Tables, SQL Database, XML File เป็นต้น โดย Test Script จะดึงข้อมูลจากไฟล์เหล่านั้นออกมาทดสอบนั่นเอง จะใช้กับการทดสอบในฟังก์ชันหรือฟีเจอร์เดียวกันในแอปพลิเคชันหลาย ๆ ครั้ง ด้วยชุดข้อมูลที่แตกต่างกัน
.
👍 ข้อดี
🔹 มีข้อมูลหลายชุดในการทดสอบ
🔹 สามารถทดสอบในสถานการณ์ต่าง ๆ ได้อย่างรวดเร็ว
🔹 ประหยัดเวลาในการทดสอบ
.
⚠️ ข้อพิจารณา
🔸 ผู้ทดสอบจะต้องมีประสบการณ์ และเชี่ยวชาญการเขียนโปรแกรม
🔸 ใช้เวลานานในการวางแผน และตั้งค่า Framework
.
Keyword Driven Testing Framework
.
การทดสอบโดยใช้ Keyword จะใช้ตารางเพื่อกำหนด Keyword หรือชุดคำสั่ง แต่ละฟังก์ชันที่จะใช้ทดสอบถูกจัดเรียงอยู่บนตารางตามลำดับของชุดคำสั่ง มีความคล้ายกับ Data Driven Testing ตรงที่ Logic Script และข้อมูลการทดสอบจะแยกจากกัน แต่การทดสอบจะละเอียดและทำได้ง่ายมากกว่า
.
👍 ข้อดี
🔹 แม้แอปพลิเคชันมีการเปลี่ยนแปลง สามารถใช้ Test Script ซ้ำได้
🔹 ใช้ Keyword กับ Test Script หลาย ๆ ชุดได้
.
⚠️ข้อพิจารณา
🔸 ใช้เวลานานในการวางแผน และตั้งค่า Framework
🔸 ยุ่งยากในการบำรุงรักษา เมื่อมีการขยายวิธีการทดสอบจะต้องสร้าง Keyword เพิ่ม
.
Hybrid Testing Framework
.
เป็นการผสมผสานระหว่าง Modular, Data Driven, และ Keyword Driven Testing Framework ซึ่งจะใช้ข้อดีและจุดแข็งของแต่ละ Framework มารวมกันนั่นเอง
.
👍 ข้อดี
🔹 เป็นการนำข้อดีของทั้ง 3 Framework มารวมกัน
.
⚠️ข้อพิจารณา
🔸 ต้องใช้เวลานานในการวางแผน
🔸 จำเป็นต้องมีทักษะการเขียนโปรแกรม
.
📑 และสำหรับใครที่อยากอ่านเพิ่มเติม กดลิงค์ด้านล่างเลย 👇👇 https://www.softwaretestingmaterial.com/types-test-automation-frameworks/#Linear-Scripting-Framework , https://smartbear.com/learn/automated-testing/test-automation-frameworks/ , https://www.testingxperts.com/blog/test-automation-frameworks
.
borntoDev - 🦖 สร้างการเรียนรู้ที่ดีสำหรับสายไอทีในทุกวัน