
Selenium Grid 4 ใช้ W3C WebDriver protocol จากเดิมที่ยังใช้งาน JSONWire protocol ไปและยังได้เพิ่มเรื่องของการสนับสนุน DevTools protocol อีกด้วยแต่ยังอยู่ในช่วงของ experiment feature เท่านั้น
เห็นมีการ share เรื่องของ Playwright ที่พัฒนาจาก Microsoft กันเยอะ เลยลองมาทำความรู้จักและลองใช้งานกันหน่อย เป้าหมายหลัก ๆ ของ Playwright ประกอบไปด้วย End-to-End testing Cross-browser automation library สนับสนุน web browser หลัก ๆ ทั้ง Google Chrome, Firefox และ Microsoft Edge ตัวใหม่ สามารถทำงานได้บน device ต่าง ๆ ได้ ทั้ง desktop, mobile และ tablet เขียนชุดการทดสอบที่ทำงานได้เร็ว และ เสถียร มีความน่าเชื่อถือ ซึ่งเข้ามาช่วยแก้ไขปัญหาของการทดสอบบน weeb browser ต่าง ๆ ที่ช้าและไม่ค่อยเสถียร ใช้ API เดียวสำหรับทุก ๆ browser ได้เลย [&hellip
การทดสอบระบบงานผ่าน Web browser นั้น ส่วนใหญ่มักจะใช้งานผ่านเครื่องมือที่ชื่อว่า Selenium ซึ่งมี library ในภาษาโปรแกรมต่าง ๆ มากมาย แต่ปัญหาของ Selenium คือ เมื่อมีจำนวนของชุดการทดสอบเยอะ ๆ แล้ว ทำให้การทดสอบช้า การแก้ไขมักจะต้องเริ่มทำการทดสอบแบบ parallel โดยทาง Selenium ก็มี project ชื่อว่า Selenium Grid ทำให้เราสามารถ scale การทดสอบผระบบด้วย Selenium ได้ดีขึ้น
จากการมานั่งคุยและแบ่งปันเรื่องของการทดสอบระบบ web แบบอัตโนมัตินั้น หนึ่งในเครื่องมือที่ลองนำมาใช้งานกันคือ Cypress จากการลองใช้งานพบว่า ไม่ยากแต่ก็ไม่ง่ายนัก เพราะว่า ต้องเขียน test script ในภาษา JavaScript แต่ถ้าพูดถึงความสามารถต้องบอกว่า ดีมาก ๆ ทั้งความเร็วในการทำงาน ทั้ง report ของการทดสอบ ทั้ง VDO ของการทดสอบ (ได้เฉพาะ browser เป็น electron เท่านั้น)
การสร้างชุดการทดสอบแบบอัตโนมัติระดับ User Interface ของ Android app นั้น เป็นเรื่องที่สำคัญมาก ๆ โดยที่ทาง Android ก็ได้เตรียมเครื่องมือและ library ต่าง ๆ ไว้ให้ครบ ยกตัวอย่างเช่น Espresso และ UIAutomator เป็น ที่สำคัญยังมี opensource library อื่น ๆ อีก ไม่ว่าจะเป็น Appium และ Calabash ดังนั้นการสร้างชุดการทดสอบแบบอัตโนมัติจึงไม่ใช่เรื่องยากหรือเป็นไปไม่ได้เลย แต่เหล่าทีมพัฒนามักไม่ชอบทำ !! ทำไมนะ
UI Testing หรือ User Interface Testing UI คือส่วนที่ผู้ใช้งานเห็น และใช้งาน ทั้งการ click และ drag & drop ด้วย mouse ทั้งการกดปุ่มใน keyboard รูปแบบของ UI จะมี 2 แบบหลัก ๆ คือ Command line GUI (Graphic User Interface) แต่ในปัจจุบันเราจะเน้นในส่วนของ GUI เป็นหลัก เนื่องด้วยความนิยมและเทคโนโลยีนั่นเอง
ใน Android Studio 2.2 Preview 3 นั้น ได้ปล่อย Espresso Test Recorder ใน Beta version ให้ลองใช้งานแล้ว ซึ่งเป็นความสามารถที่ขี้โม้ไว้ในงาน Google I/O 2016 นั่นแสดงว่า เราสามารถบันทึกการทดสอบ Android App ง่าย ๆ ด้วยการใช้งาน App แบบปกติ โดยผลที่ได้คือ ชุด code ของการทดสอบแบบอัตโนมัติ ซึ่งเราสามารถทำการแก้ไขได้อีกด้วย แต่ก็มีข้อจำกัดพอสมควร !!