Metric ที่สําคัญของ Load Testing?
รีบสรุปก่อนที่จะเริ่มงงกันเลย...
ค่าหลักๆที่ใช้ในการวิเคราะห์ผลของ Performance Testing ก็คือMean = ค่าเฉลี่ย
Median = ค่าที่อยู่ตรงกลางของข้อมูล = 50th percentile
Percentile = ช่วงของข้อมูลที่ตกใน Percent นั้นๆ
Throughtput = จํานวนที่ Server เรารับได้ในช่วงเวลานั้นๆ เช่น 10requests/second แปลว่า รับได้ 10คน ต่อวินาทีเท่านั้นนี้คือตัวอย่างของการอ่าน Percentile ของรูปนี้น่ะ...
QA Cheat Sheet
หลังจากเขียนบทความมามากกว่า 50 บทความ :) เริ่มรู้สึกว่าความรู้มันปนไปปนมาค่อนข้างเยอะล่ะ เลยอยากทํา Cheat Sheet เหมือนเวลาเราเรียนรู้คําสั่งในโปรแกรมใหม่ๆนั้นเอง แบบ Git Cheat Sheet ข้างล่างนี้แต่ cheat sheet อันนี้จะเป็น QA Cheat Sheet แทน! เพื่อเวลาที่เราคิดงานไม่ออก จะได้เอามากางดู ว่าถ้าจะคิด Functinoal Test เราควรจะหยิบอะไรมาคิด หรือ ถ้า Non-Functional Test...
อย่าลืมคิดถึง Non-Functional Test Cases กันน่ะ!
ส่วนตัวผมคิดว่า การเป็น QA ที่เก่ง เริ่มจากพื้นฐานของคิดเป็นหลัก เพราะ QA เป็นอาชีพที่คิดวิเคราะห์ว่าเราจะตรวจสอบระบบยังไงเป็นหลัก แล้วค่อยเสริมด้วยเทคโนโลยีเข้ามาเสริมให้ทันโลก ดังนั้นบทความนี้มาเสริมแนวคิดของ QA อันสุดท้ายเลย ซึ่งก็คือวิธีคิด test cases แบบ Non-functional นั้นเองหลังจากเรียนรู้ไรสนุกๆมาเยอะแยะอย่างเช่นบทความ มาเขียน test cases ที่ดีกันดีกว่า? ต้องใช้เทคนิคอะไรบ้าง? กับบทความ เริ่มต้นกับ API Testing ยังไงดี? :) เราก็รู้แล้วล่ะน่ะ ว่าการจะเขียน test cases ที่ดีเราต้องคิดยังไง? เราจะออกแบบการเขียนเทสสําหรับ...
เทคนิค SQL Investigation อาวุธลับของเหล่า QA
หลังจากหายหน้าหายตาไปซักพักกับงานยุ่งๆๆ คราวนี้เรามาเรียนรู้กับการใช้งานสิ่งสําคัญอีกอย่างนึงของ QA ที่ขาดไม่ได้เลย ซึ่งนั้นก็คือการใช้ SQL statements นั้นเอง :)ทําไมถึงสําคัญ??? อย่างที่เรารู้กันว่า QA คือบุคคลที่จําเป็นต้องมีความเข้าใจในระบบอย่างมาก เข้าใจทุกจุดของของระบบเลย เราจะเข้าใจภาพกว้างของระบบ แต่อาจจะไม่ต้องลึกถึงขั้นโค้ดนี้มี Performance ยังไงหรอกน่ะ แต่ต้องเข้าใจเรื่องของ quality, constraint และ overall design ระบบ เช่นระบบ retry กี่ครั้ง? timeout ภายในกี่นาที?
ถ้าระบบ...
เริ่มต้นกับ API Testing ยังไงดี?
หลังจากเรียนรู้ว่า QA คือใคร? ทําหน้าที่อะไร? ก็จะรู้แล้วล่ะว่า QA นั้นต้องมีความรู้ค่อนข้างมากเลย ไม่ใช่งานง่ายๆว่าจับใครมาทําก็ได้น่ะ มันต้องรู้ตั้งแต่ต้นนํ้าจนปลายนํ้าเลยล่ะ :)ทีนี้..เรามาสนใจการเทสที่ business layer กันหรือนั้นก็คือส่วนของ API testing นั้นเอง ซึ่งการเทสของ API testing เนี่ยมุมมองจะแตกต่างกับการเทสของ presentation layer มากๆเลยล่ะ เพราะ...ส่วนของ presentation layer มันคือเรื่องของ front logic ในการ display หรือ...
มาเขียน test cases ที่ดีกันดีกว่า? ต้องใช้เทคนิคอะไรบ้าง?
สำหรับเหล่า QA / Software Tester / Software Engineer in Test หรือใครก็ตามที่ต้องการจะทําการทดสอบระบบอะไรซักอย่าง สิ่งแรกที่ควรทําเลยไม่ใช่ไปสนใจว่าเราจะใช้เทคโนโลยีอะไรในการพัฒนาระบบ เช่น สมมุติให้มีระบบจัดการลูกค้าบนมือถือ Application เป็น WebView ของมือถือนั้นๆ สิ่งแรกที่ควรทําไม่ใช่เราไปคิดฟุ้งซ่านว่า เราจะต้องลง Jenkins ทํา pipeline เอา docker มา initialize application นั้นในการทํา test เพื่อตัด...
QA คือใคร? แล้ว QA ทําหน้าที่อะไร?
เคยสงสัยกันมั้ยว่า QA ทําหน้าที่อะไรใน Software Development Cycle เรามาเพื่อจิ้มๆๆ กดๆๆโปรแกรมที่ถูกพัฒนาขึ้นมาจาก Dev. จริงหรอ? แล้วเราต้องเป็นพลเมืองชั้นสองของเวลาทํางานจริงหรอ? เราต้องนั่ง test โปรแกรมที่เมื่อ Dev. เสร็จเท่านั้น ก่อนหน้านั้นก็นั่งรอไปหรอ? นั่งกดโปรแกรมจนดึกดื่นไปเรื่อยๆ เวลาแก้ไขที ต้องมานั่งกดกันจนมือหงิกหรอ?ไม่ใช่เลยน่ะ งาน QA ไม่ใช่งานไร้สาระอะไรแบบนั้น QA ย่อมาจากคําว่า Quality Assurance ซึ่งมันก็บอกน่ะ คือเราเน้นเรื่องคุณภาพ เราสนใจที่ quality...
วิธีตั้งค่า Sublime เพื่อเขียน Robot Framework
เวลาเราเริ่มเขียน Robot Framework ใหม่ๆ มันก็มักจะมีคําถามมากมายที่เรายังสับสนเต็มไปหมด เช่น เราจะเขียน syntax มันยังไง? อะไรคือ Tab? อะไรคือ Space? จนไปถึงเรื่องของเราจะใช้ IDE อะไรในการเขียน???จริงๆเคยเขียนบทความเรื่องของการใช้ ๊Intellibot และ PyCharm ที่เป็น Python IDE ของ JetBrains ไปแล้วล่ะ แต่พอถึงเวลาจริงๆดันไปรู้สึกว่า SublimeText ใช้ง่ายกว่ามากเลย ทั้งเรื่องของ ความเร็ว, plugins และ ความใช้งานง่ายของมัน...
Microservice Testing Strategies
จริงๆแล้ว ผมเชื่อว่าทุกคนน่ะ ทํางานอยู่บน สถาปัตยกรรม Microservices มานานละ แต่ไม่รู้ชื่อเรียกมันมากกว่า จากการที่สังเกตุจากหลายๆบริษัทที่ทํางานมา เพราะเจ้าสถาปัตยกรรมนี้มันก็คือแค่ แยกแต่ละ services ออกจากกันโดยชัดเจน ก็แค่นั้น :) ถ้าใครทันสมัยก่อน เราจะนิยม Deploy ด้วย ear file ของ JavaEE ซึ่งก้อนนึงนี้ใหญ่กว่าอุกกาบาตที่วิ่งชนโลกสมัยก่อนซะอีก เพราะฉะนั้นสถาปัตยกรรมใหม่ คือแยกแต่ละส่วนให้ชัดเจน เพื่อที่จะได้ง่ายต่อการ develop และ delopyอย่างตัวอย่างข้างบนคือ ความแตกต่างระหว่างระบบเก่าและระบบใหม่ โดยการแยกแต่ละ Module...
Robot Framework Sikuli 101
Brief สั้นๆ
ทําแต่ Automate บนเว็ปมาตลอด อยู่แต่บน Browser จนเป็น comfort zone ไปแล้วถ้าเราจะทํา Automate test บน window หรือ อะไรที่อยู่บนหน้าจอละจะทําไง? คําตอบคือ "Sikuli" นั้นเองง
Sikuli คืออะไร?
เจ้านี้คือ Library ที่จะมาช่วยเราแก้ปัญหาทุกอย่าง เพราะเจ้าตัวนี้มันจะช่วยให้เรา automate ทุกๆอย่างที่เราเห็นบนหน้าจอเรา โดยไม่ได้สนใจเรื่องของ Locator ID หรือ อื่นๆเลยแม้แต่น้อย เพราะมันใช้ image recognition...