169 wordpress feature image

เขียน Scenario จนครบ แต่ Automation ก็ยังพังอยู่ดี

เขียน Automation Test Scenario เป็น Gherkin ไว้ 40 ข้อลองรันบนเครื่องก็ผ่านหมด ส่งขึ้นไปบน CI/CD ก็ผ่าน ทีมภูมิใจมาก เรามี Automation Test ที่ Test Coverage ดีเยี่ยม ครอบคลุมครบทุก requirement ผ่านไป 2 สัปดาห์ มีการอัพเดต UI เข้ามา 🔴 เทสพังไป 38 ข้อทีมต้องวิ่งวุ่นไปไล่อัพเดตจุดที่หน้า UI เปลี่ยน ปัญหาไม่ได้เกิดเพราะโค้ดพัง แต่เพราะเขียนผิดวิธีมาตั้งแต่แรก . เรื่องนี้เป็นอีกหนึ่งปัญหาที่เจอบ่อยมากๆ ในทีมที่เพิ่งทำ Automation Test ค่ะ วันนี้จะพาทุกคนไปรู้จักกับวิธีเขียน Scenario 2 แบบ คือ Imperative กับ Declarative กันค่ะและถ้าเลือกผิด ชีวิตอาจจะเปลี่ยนโดยไม่รู้ตัว . 📌 Imperative […]

เขียน Scenario จนครบ แต่ Automation ก็ยังพังอยู่ดี Read More »

169 wordpress feature image (2)

ทำไม Automation Test ที่เขียนถูก ถึงยังเชื่อไม่ได้เสมอไป

👻❌ เคยเจอผีหลอกตอนรัน Automation Test กันมั้ยคะ รันบนเครื่องตัวเองกี่รอบก็ผ่านหมด ผ่านตลอด ผ่านทุกครั้ง ไม่เคยติดปัญหาอะไรแต่พอเอาขึ้นไปรันรวมกับ Regression Test เท่านั้นแหละพังยับ!!! แล้วเราเอามาลองรันบนเครื่องตัวเองหลังจากเห็นมันพังเอ้า ก็ผ่าน สุดท้ายนั่งกุมหัว ไม่รู้จะทำยังไง 🤦‍♀️ แค่นั้นยังไม่พอ พอเป็นแบบนี้บ่อยๆ กลายเป็น Automation Test ที่ไม่ stable และไม่มีใครเชื่อมันซะงั้นสุดท้ายกลับมานั่งเช็ค manual เหมือนเดิม เพราะผล Automation Test มันเชื่อไม่ได้ อวสาน QA ร่างทอง Test ที่รันอยู่ก็ไม่มีใครเชื่อทีมก็ไม่แบ่งเวลาให้เขียน Automation Test เพราะไม่เห็นประโยชน์สุดท้ายก็รัน Manual เหมือนเดิม … ยังค่ะ ยังไม่จบแค่นี้ เราไม่อวสานกันง่ายๆ แบบนี้หรอกนะคะวันนี้พี่กิ่งจะพามาเจาะลึก “หนึ่งปัญหาสำคัญ” ที่ทำให้เกิดเหตุการณ์แบบนี้ได้ค่ะบางทีมันไม่ได้เกิดจากเขียนโค้ดไม่ดี หรือระบบมีบั๊กเยอะอะไรเลยค่ะแต่มันอาจจะเกิดจากปัญหาง่ายๆ จากสิ่งที่เรียกว่า “Test Data” ของเรา ที่มันไม่ independentคือไม่เป็นอิสระต่อกัน

ทำไม Automation Test ที่เขียนถูก ถึงยังเชื่อไม่ได้เสมอไป Read More »

169 wordpress feature image (1)

Gherkin ที่ดี = Automation ที่ไม่พัง

6 วิธีง่ายๆ ที่ทำให้ Test Stable ขึ้นได้ทันที . ไม่ว่าคุณจะเพิ่งเริ่มเขียน Gherkin เพื่อใช้เป็น Acceptance Criteriaหรือ เอาไปใช้เป็น Feature File ใน Automation Test อยู่แล้ว มีสิ่งนึงที่เราทุกคนเจอเหมือนกันค่ะ เขียน Scenario ไปหมดแล้ว Given-When-Then ครบทุกข้อแต่ทีมก็ยังอ่านไม่รู้เรื่อง ไม่มีใครเข้าใจว่าจะเทสอะไรหรือถ้าใช้ใน Automation Test อยู่ ก็พังหมดจนตามแก้แทบไม่ไหว ปัญหาไม่ใช่ว่า Gherkin ไม่ดีแต่อยู่ที่วิธีที่เราเขียนมันต่างหาก วันนี้พี่กิ่งเอา checklist 6 ข้อมาฝากกันค่ะเอาไปทำตามกันได้เลย . 📌 1. บอกว่า “ต้องการอะไร” ไม่ใช่ “ทำยังไง” Gherkin ที่ดี ต้องบอก behavior ค่ะ สิ่งที่ต้องการจะทำคืออะไรไม่ใช่ implementation ว่าทำยังไง ขั้นตอนเป็นยังไง เรามาลองดูตัวอย่างกันค่ะ ❌

Gherkin ที่ดี = Automation ที่ไม่พัง Read More »

169 wordpress feature image (31)

BDD ไม่ใช่แค่ Cucumber – การเข้าใจผิดที่อาจทำให้ทีมพัง

ทีมใครใช้ BDD กันอยู่บ้างคะ ตอนที่พี่กิ่งได้ยินคำว่า BDD ครั้งแรกมันมาคู่กับคำว่า Cucumber ค่ะ 🥒 แล้วทุกคนก็บอกว่าเราจะเริ่มเขียน Test และ Acceptance Criteria แบบนี้กันนะทุกคนก็ไปเริ่มทำตาม รวมทั้งพี่กิ่งด้วย ทั้งที่ตอนนั้นยังไม่รู้เลยว่า BDD คืออะไรรู้แค่ว่า Cucumber มันเขียน Given-When-Then แล้วเราก็เริ่ม ทำ BDD กัน จนผ่านมาซักพักนั่นแหละค่ะถึงได้รู้ว่าเราไม่ได้เข้าใจอะไรมันจริงๆ เลยสักนิด 😅 . 🤔 Cucumber ≠ BDD นี่คือความเข้าใจผิดที่เจอบ่อยที่สุดในวงการ QA เลยค่ะ BDD ไม่ใช่ CucumberBDD ไม่ใช่ GherkinBDD ไม่ใช่ Given-When-Then ไม่ใช่อะไรซักอย่าง แล้วมันคืออะไรกันแน่ จริงๆ แล้วทุกอย่างที่พูดไปมันคือคนละเรื่องกันเลยค่ะ . 💡 BDD คือ วิธีคิดและวิธีทำงานของทีม Behavior-Driven Development

BDD ไม่ใช่แค่ Cucumber – การเข้าใจผิดที่อาจทำให้ทีมพัง Read More »

169 wordpress feature image (30)

ทำไม Automation Test 10,000 ข้อ ถึงไม่มีใครเชื่อ และจะแก้ยังไง

เคยมั้ยคะ มี Automation Test เป็นหมื่นข้อแต่ก็เหมือนไม่เคยมีอยู่จริง มี Automation Test พร้อมแล้ว วิ่งทุกวันวันละ 3-4 ชั่วโมง แต่พอรันเสร็จ…แดงเถือก!!! Fail เพียบแต่ไม่มี Bug จริงซักอันแถมทีมต้องเสียเวลามานั่งเช็คเองอีก แล้วเราก็ต้องไปไล่เช็ค ดูไปทีละเคสว่าตายเพราะอะไรบางอันก็ต้องไปลองรัน Manual ดูว่าเป็นบั๊กจริงมั้ยเสียเวลาไปอีกหลายชั่วโมง กว่าจะตอบได้ว่า build นี้พร้อมหรือไม่พร้อม แล้วเราก็มานั่งนึกว่า ที่มี Automation Test เนี่ย มันช่วยเราอยู่จริงใช่มั้ยหรือแค่ย้ายจากงาน Manual Test มาเป็น Manual ดูแล script แทน . พี่กิ่งเคยเจอปัญหานี้มาแล้วค่ะ มีเทสรันทุกวัน วันละเป็น 10,000 ข้อ รัน Parallel อีกต่างหากRegression Test ครบทุกอย่าง ครอบคลุมหมดทุก Requirementตัวเลขดูดีมากเลยใช่มั้ยคะ แต่ชีวิตจริงคือกุมหัวทุกวัน 10,000 ข้อ เฟลไปแล้ว 20,000

ทำไม Automation Test 10,000 ข้อ ถึงไม่มีใครเชื่อ และจะแก้ยังไง Read More »

169 wordpress feature image (29)

ทำไม Automation ที่สร้างกันมาแทบตาย สุดท้ายก็ไม่ได้ใช้จริงทุกที

เคยเป็นกันมั้ยคะตัดสินใจลงทุนทำ Automation Testing กันจริงจังใช้เวลาหลายสัปดาห์ เขียน Script แปลง Test Case ที่มีอยู่เป็น Automationแล้วก็เอาไปให้ทุกคนใช้ ทีมก็ภูมิใจกับของที่ทำไป ทุกคนตื่นเต้นที่จะได้ใช้อะไรใหม่ๆ 6 เดือนผ่านไป… 🤖💥 Script เริ่มพังไปทีละตัวเราก็เข้าไปแก้ตรงจุดที่พัง แล้วก็ใช้ต่อผ่านไปซักพัก เอ๊า ทำไมพังอีกแล้ว ก็แก้อีกผ่านไปอีกซักพัก มีฟีเจอร์ใหม่ออกมา เอ๊า Test ที่มีอยู่พังหมดเลย สุดท้ายก็ไม่มีใครสนใจผลเทสของเราอีกไม่มีใครไปกดรัน เพราะรู้ว่าเดี๋ยวมันก็แดงงานก็เร่ง ต้องออกตาม timeline ที่เลื่อนแล้วเลื่อนอีกสุดท้ายทุกคนก็กลับไปรัน Manual เหมือนเดิม เพราะไม่มีเวลามาดู แค่ทำงานใน Sprint ก็หัวหมุนแล้ว คิดว่าปัญหาเกิดจากอะไรคะมีใครไม่เก่งรึเปล่า?หรือเราเลือก Tool ผิด?หรือเรายังตั้งใจทำงานกันไม่พอ? ไม่ใช่ซักอย่างเลยนะคะ แต่จริงๆ แล้วมันเกิดจากสิ่งเหล่านี้ค่ะ 🧑‍🎨 1. ไม่ Design ตั้งแต่แรก แล้วก็เขียนเหมือน Manual Test รันต่อกันยาวๆ เคยเห็น Automation Test

ทำไม Automation ที่สร้างกันมาแทบตาย สุดท้ายก็ไม่ได้ใช้จริงทุกที Read More »

169 wordpress feature image (28)

จงเรียนรู้ทุกอย่างแล้วลืมมันไปซะ!

💡 เลิกกางตำราเขียน Test Case แล้ว EP/BVA จะมีค่าขึ้นมาทันที จาก Test Design Workshop ครั้งที่แล้ว มีคำถามนึงที่คนถามเข้ามาเยอะก็คือ EP BVA ไอ้ตัวย่ออะไรพวกนี้เนี่ย มันคืออะไร ซึ่งวันนั้นพี่กิ่งบอกไว้ว่า ยังไม่ต้องสนใจ เพราะจริงๆแล้วเราไม่ควรเริ่มต้นจากสิ่งนี้ค่ะ  วันนี้เลยจะอยากมาขยายความเพิ่มเติมให้อีกนิด เผื่อว่าจะช่วยตอบคำถามของหลายๆ คนในวันนั้นได้นะคะ คิดว่าหลายๆ คนน่าจะเจอปัญหาคล้ายกัน ที่ตอนเรียนเราก็เข้าใจดีอยู่หรอกว่ามันคืออะไร แต่พอเจองานจริง เจอ Requirement จริง ก็ไม่รู้จะเอาไปใช้ยังไง หรือบางคนเริ่มมาก็กางตำรา ใส่เทคนิคเข้าไปรัวๆ เสร็จแล้วก็ไม่มั่นใจอยู่ดีว่า Test Case ครบหรือไม่ครบกันแน่ อย่างที่พี่กิ่งย้ำบ่อยๆ ค่ะ สิ่งที่สำคัญที่สุดคือ “วิธีที่เราเริ่มต้นคิด” ต่างหาก ที่จะบอกว่าเราเป็น QA ทั่วไป หรือ เป็น QA ร่างทอง ถึงตรงนี้ถ้าใครยังไม่รู้จักว่า EP BVA คืออะไร สามารถเข้าไปดูในโพสเก่าได้นะคะ ในนี้จะมีอธิบายพื้นฐานเอาไว้ เดี๋ยวเรามาลองตัวอย่าง Requirement

จงเรียนรู้ทุกอย่างแล้วลืมมันไปซะ! Read More »

169 wordpress feature image (27)

AI เขียน Test Case 25 ข้อใน 5 วินาที แล้ว QA อย่างเราต้องทำอะไร

ลอง Prompt AI ให้เขียน Test Case ของระบบ Checkout Shopping Cart ค่ะแค่ 5 วินาที ได้ออกมา 25 ข้อ แยกเป็น Positive, Negative, Edge Case ชัดเจนแถมยังจัดฟอร์แมท ใส่ Test Case ID มี Step, Expected Result ให้เราครบเลย ใครสนใจลองเข้าไปดูได้ที่นี่นะคะ👉 https://with-natsiree.vercel.app/genAI-testcases/checkout.html ดูดีมากกกก เลยใช่มั้ยคะ แถมยังออกมาได้ใน 5 วินาที เริ่ดสุดๆ ออกตัวไว้ก่อนว่านะคะ ว่าไม่ได้กำลังจะบอกว่า อย่าไปใช้ AI เลย มันเขียนไม่ดีจริงๆแล้ว Test Case ที่ออกมา ถือว่าเขียนได้เป๊ะจนน่าตกใจ แต่ใครสังเกตเห็นอะไรบ้างมั้ยคะ…พอลองลงไปดูรายละเอียดดีๆ เราจะเห็นอะไรบางอย่าง ❌ Garbage In =

AI เขียน Test Case 25 ข้อใน 5 วินาที แล้ว QA อย่างเราต้องทำอะไร Read More »

169 wordpress feature image (26)

ทำ QA มาสักพัก แต่ทำไมยิ่งทำ ยิ่ง “ไม่มั่นใจ” ขึ้นทุกวัน

ความรู้สึกแบบนี้ ไม่ใช่ว่าเทสไม่เป็น หรือ ไม่เก่งนะคะแต่มันคือความ “ไม่มั่นใจ” ว่าสิ่งที่เราทำไปเนี่ยคือสิ่งที่ถูกจริงๆหรือเปล่า ถึงเราจะเขียน Test Case รันเทสผ่าน เจอบั๊ก แก้ไปหมดแล้วแต่บางทีก็อาจจะมีคำถามแว้บเข้ามาว่า “ที่เราเทสไปเนี่ย ครบจริงๆใช่มั้ย”“หรือแค่โชคดี ที่ยังไม่เจอบั๊กอะไรแรงๆ”“ยังมีอะไรอีกมั้ยที่เราอาจจะลืมหรือมองข้ามไป” เนี่ยแหละค่ะ อีกหนึ่งความยากของงาน QAเพราะบางทีมันบอกไม่ได้ว่า แค่ไหนคือดีพอ เทสแค่ไหนถึงจะมั่นใจได้ เอาง่ายๆ คือ เราไม่รู้ในสิ่งที่เราไม่รู้ (งงมั้ยคะ)เราก็เลยกังวลใจว่าจะมีตรงไหนที่ยังหาไม่เจออีกมั้ย ที่ผ่านมา ก็เลยจะเห็นบางคนที่กอดงานเอาไว้ ไม่ยอมปล่อยซักทีขอเทสตรงนั้นเพิ่มอีกนิดนึง ตรงนี้ก็อยากจะเช็คอีกรอบบางทีรัน regression ไปหลายรอบแล้วก็ยังไม่มั่นใจซักที สุดท้ายก็มักจะจบลงที่การแบกความกังวลไว้คนเดียวกลัวว่าพลาดขึ้นมาแล้วจะกลายเป็นคนที่ต้องตอบคำถาม อยากให้ทุกคนที่กำลังเป็นแบบนี้อยู่ ลองทบทวนดูนะคะการพยายามแบกทุกอย่างไว้คนเดียวมันเหนื่อยเกินไป ✅ ลองปรับมุมมองว่างานด้าน Quality มันคือเรื่องของ “ทั้งทีม”ไม่ใช่แค่หน้าที่ของใครคนใดคนหนึ่ง 📌 ถ้าตรงไหนไม่ชัวร์ ไม่รู้จะเทสยังไง อาจจะลองเดินไปถาม Dev ก็ได้ว่าเคสนี้เค้ามองยังไง ช่วยกันดู ช่วยกันคิดเคสดักไว้ตั้งแต่แรก📌 ถ้ากลัวพลาด ก็บอกกับทีมตรงๆ เลยค่ะ ว่าเราเทสไปเท่านี้นะ แต่ยังมีส่วนนี้ที่ไม่มั่นใจ เพื่อให้ทีมเตรียมรับมือ ถ้าเกิดปัญหาก็จะได้ช่วยกัน📌 ถ้าพลาดขึ้นมาจริงๆ ก็เก็บปัญหาไว้เป็นบทเรียนค่ะ

ทำ QA มาสักพัก แต่ทำไมยิ่งทำ ยิ่ง “ไม่มั่นใจ” ขึ้นทุกวัน Read More »

169 wordpress feature image (25)

Test Case 100 ข้อ แต่บั๊กก็ยังหลุด!

เคยเป็นเหมือนกันมั้ยคะเขียน Test Case ไปเป็น 100 ข้อ เช็คครบทุกอย่างแล้ว แต่พอ Release ไปจริงๆลูกค้าดันเจอบั๊กที่เราไม่เคยคิดถึงเลย 🫠 ปัญหาไม่ได้อยู่ที่เราเทสน้อยเกินไปค่ะ แต่เราอาจจะกำลังเทสไม่ตรงจุดเพราะเราแตก task ย่อยเกินไป อย่างสมมติว่าเราต้องเทสหน้า Login พอเห็นปุ๊บเราก็จะคิดทันทีว่ามี Username / มี Password / มีปุ่ม Login → เช็คไปทีละอัน พอครบก็ผ่าน มันไม่ได้ผิดค่ะ แค่… ไม่พอ เพราะ User จริงๆ เค้าใช้งานระบบค่ะ เค้าอาจจะ Login ผิดซ้ำ 2-3 รอบเพราะจำ password ไม่ได้เค้าอาจจะปิดแท็บไป แล้วกลับมาใหม่ หรือเค้าอาจจะเปิดค้างไว้จน session หมด บั๊กที่หลุดไปส่วนใหญ่ ไม่ได้หลุดเพราะแต่ละ field ทำงานไม่ถูก แต่มันหลุดเพราะ ช่วงรอยต่อระหว่างแต่ละส่วนที่เราไม่ได้คิดถึงค่ะ ลองดูตัวอย่างต่อจากหน้า Login กันค่ะ ❌ แบบที่คนมักทำ (เช็ค

Test Case 100 ข้อ แต่บั๊กก็ยังหลุด! Read More »