12/08/2018, 17:48
Agile Testing - Significant Attributes
1. Agile Testing Benefits Những lợi ích của Agile testing là : Sự hài lòng của khách hàng bằng cách làm việc một cách nhanh chóng, liên tục hoàn thành testing sản phẩm và tìm kiếm thông tin phản hồi của khách hàng. Customers, developers, and testers làm việc tương tác qua lại với nhau giúp ...
1. Agile Testing Benefits
Những lợi ích của Agile testing là :
- Sự hài lòng của khách hàng bằng cách làm việc một cách nhanh chóng, liên tục hoàn thành testing sản phẩm và tìm kiếm thông tin phản hồi của khách hàng.
- Customers, developers, and testers làm việc tương tác qua lại với nhau giúp đỡ tốn thời gian hơn.
- Agile testers nhanh chóng tham gia vào việc xác định các yêu cầu cũng như đóng góp chuyên môn để tập trung vào những gì có thể thực hiện được .
- Agile testers sẽ tham gia vào estimate task cho effort and time.
- Testing requirements cần sự cộng tác của cả team, để trách những rũi ro.
- Tập trung liên tục vào chất lượng sản phẩm của toàn bộ team.
- Define status "Done" nhằm phản ánh các bài thử nghiệm (testcase) đã xong nhằm đảm bảo yêu cầu được đáp ứng.
- Nếu nhận feedback về việc chậm trể hoặc blockages thì để giải quyết immediately thì cần sự hổ trợ effort của team.
- Có sự phản hồi sớm để tiện cho việc thay đổi requirements (nếu cần thiết) or đáp ứng được sớm.
- Có sự regression testing liên tục để xem dự án có ổn đinh hay không.
- Không có time delay giữa development và testing, test first đầu tiên, tiếp tục các testing được theo sau.
- Automation testing được thực hiện sớm trong vòng đời phát triển, do đó làm giảm tổng thời gian testing và effort.
2. Best Practices in Agile Testing
Thực hiện theo các phương pháp hay nhất được đưa ra bên dưới:
- Bao gồm những tester có chuyên môn trong tất cả các loại testing ở mọi cấp độ.
- Testers sẽ tham gia vào define yêu cầu, cộng tác với khách hàng về expected behavior của sản phẩm.
- Testers chia sẻ feedback liên tục giữa developers và customer.
- Test first và testing liên tục để phù hợp với công việc phát triển.
- Theo dõi test status và test-progress một cách nhanh chóng và liên tục với mục đích là cung cấp sản phẩm chất lượng.
- Automation testing sớm trong vòng đời phát triển để giảm thời gian kiểm tra lặp đi lặp lại.
- Để thực hiện Regression Testing, hãy tận dụng Automation Testing như một cách hiệu quả.
3. Challenges in Agile Testing
Những thách thức sau tồn tại trong Agile testing:
- Việc không hiểu được cách tiếp cận Agile và những hạn chế của nó bởi Business and Management có thể dẫn đến những kỳ vọng không thể thực hiện được.
- Agile theo phương pháp tiếp cận toàn team, nhưng không phải ai cũng biết các yếu tố cần thiết của thực hành testing. Tester nên huấn luyện những người khác, nhưng trong scenario thực tế có thể không thể thực hiện được bởi vì Sprints có thời hạn.
- Phương pháp tiếp cận test first yêu cầu developers coding dựa trên những feedback của Tester, nhưng trong các tình huống thực tế, developers thường quen với việc coding dựa trên Yêu cầu đến từ Khách hàng hoặc Business.
- Trách nhiệm đối với Quality Product là với toàn bộ Agile Team, nhưng trong giai đoạn ban đầu, Developers không tập trung vào chất lượng khi họ có nhiều time vào implementation mode.
- Liên tục Regression Testing đòi hỏi tốn rất nhiều effort ngay cả khi nó được testing bởi automated .
- Tester có thể thích ứng với những thay đổi với mind-set của Agile, nhưng có khả năng Test Changes và kết quả testing có thể không thực tế để hoàn thành mục tiêu kết thúc trong Sprint.
- Automation sớm được khuyến cáo để có thể giảm thời gian của Manual Testing. Nhưng, trong scenario thực tế để thực hiện được automation test cũng đòi hỏi tốn nhiều Time và effort.
4. Agile Testing Guidelines
Sử dụng các nguyên tắc sau trong khi thực hiện Agile testing.
- Tham gia vào Kế hoạch release để xác định các hoạt động Agile và đưa ra test plan một cách phù hợp.
- Tham gia vào estimate task để xác định effort testing, thời gian để các hoạt động testing được cung cấp trong các lần lặp lại.
- Tham gia vào define User Story để đưa ra Acceptance Test Cases.
- Tham gia vào mỗi cuộc họp lập Plan cho Sprint để hiểu được scope và updare Test plan cho phù hợp.
- Liên tục cộng tác với team Development trong Sprint để làm cho việc testing và coding thành công trong sprint.
- Tham gia daily meeting hằng ngày để nắm được tiến độ cũng như tình hình dự án or test delays or Blockages cũng có thể nhận giải pháp ngay lập tức .
- Theo dõi và báo cáo Test status, Test Progress và chất lượng sản phẩm thường xuyên.
- Hãy sẵn sàng để thích ứng với các thay đổi, đáp ứng với các sửa đổi đối với các Test case, Test data.
- Tham gia vào cuộc hợp Retrospectives để hiểu or đóng góp những phương pháp hay những bài học mình đã học được.
- Cộng tác trong việc thu thập Feedback của Khách hàng tại mỗi Sprint.
Nguồn Tham khảo:
- http://blogs.starcio.com/2011/11/top-ten-attributes-of-agile-platforms.html
- https://www.v2soft.com/10-key-characteristics-agile-software-development-methodology
- https://www.tutorialspoint.com/agile_testing/index.htm