flashsky
Senior Member
Hồi trước mới làm automation thì nghĩ viết càng nhiều auto test thì càng tốt, nhưng sau những va vấp và phát triển trong nghề thì thấy viết càng nhiều nhất là UI automation test thì sau này ăn hành càng nhiều, ban đầu viết thì thấy khá là đã tay nhưng về sau maintain cái đống test do chính tay mình viết chỉ cách đây 1 năm thôi là coi như mất trí nhớ cmnl, nhất là lúc ui change hoặc tính năng đổi, ngồi mò để modify là thấy oải.
Cái mà mình thấy mệt mỏi nhất là phần pre-condition, multiple environment setting, prepare data, ai mà không cứng xài fixed data nhiều thì test fail cho thấy mợ luôn, chưa kể mấy vấn đề trời hỡi liên quan đến network, máy móc, webdriver update... Trong trường hợp của bạn mình có vài ý kiến thế này dựa theo cái project mình đang làm
Break out autotest thành test level như mô hình test pyramid.
1. E2E (UI) testing: test scenarios tập trung các feature core quan trọng nhất của hệ thống. 10 k case manual thì mình có thể tưởng tượng được rằng nó sẽ có hằng hà sa số test case không quan trọng mấy liên quan đến sort/filter column, add/edit/delete data setting.. mà mình có thể move nó xuống tầng API testing
2. Integration (API) testing: Test scenario liên quan đến API request/response hoặc integration với các hệ thống khác. Test ở tầng này execute nhanh gọn lẹ, dễ debug, dễ maintain.
3. Unit testing: Dev handle phần này.
Đương nhiên là nếu có đội ngũ QC hùng hậu, cứng về automation thì viết 10k case UI chia mỗi ông nắm 1k cases cũng ổn, nhưng nếu là 1 ông cứng 9 ông scripter copy paste thì người khổ nhất vẫn là ông cứng tay thôi
Cái mà mình thấy mệt mỏi nhất là phần pre-condition, multiple environment setting, prepare data, ai mà không cứng xài fixed data nhiều thì test fail cho thấy mợ luôn, chưa kể mấy vấn đề trời hỡi liên quan đến network, máy móc, webdriver update... Trong trường hợp của bạn mình có vài ý kiến thế này dựa theo cái project mình đang làm
Break out autotest thành test level như mô hình test pyramid.
1. E2E (UI) testing: test scenarios tập trung các feature core quan trọng nhất của hệ thống. 10 k case manual thì mình có thể tưởng tượng được rằng nó sẽ có hằng hà sa số test case không quan trọng mấy liên quan đến sort/filter column, add/edit/delete data setting.. mà mình có thể move nó xuống tầng API testing
2. Integration (API) testing: Test scenario liên quan đến API request/response hoặc integration với các hệ thống khác. Test ở tầng này execute nhanh gọn lẹ, dễ debug, dễ maintain.
3. Unit testing: Dev handle phần này.
Đương nhiên là nếu có đội ngũ QC hùng hậu, cứng về automation thì viết 10k case UI chia mỗi ông nắm 1k cases cũng ổn, nhưng nếu là 1 ông cứng 9 ông scripter copy paste thì người khổ nhất vẫn là ông cứng tay thôi