Làm thế nào để việc testing đạt kết quả tốt nhất trong khoảng thời gian hạn chế?
Điều gì sẽ xảy ra nếu không có đủ thời gian để thực hiện testing một cách kỹ lưỡng?
Trong thực tế khi thực hiện develop hay maintain một dự án lớn/ nhỏ bất kỳ nào, tester đều thường xuyên phải đối mặt với bài toán “Làm thế nào để việc test đạt kết quả tốt nhất trong khoảng thời gian hạn chế?”
Việc thực hiện testing toàn bộ ứng dụng hay hệ thống trong một khoảng thời quy định (tương đối hữu hạn) là điều không thể. Do đó, với tình huống này, chúng ta sẽ có những cách áp dụng khác nhau để đạt được hiệu quả testing tốt nhất.
I. Dựa trên kinh nghiệm:
Điều tốt hơn cả là tìm ra những yếu tố được cho là risk của dự án và tập trung vào chúng. Dưới đây là một số điểm cẩn được xem xét:
- Tìm kiếm xem đâu là các chức năng quan trọng của dự án?
- Tìm kiếm xem đâu là module chứa nhiều risk trong dự án?
- Những chức năng nào user thường sử dụng?
- Những chức năng nào có độ an toàn cao?
- Những chức năng nào có ảnh hưởng lớn đến user?
- Những khía cạnh nào của app là quan trọng nhất đối với khách hàng? – Những phần nào có code phức tạp nhất và dễ có sai sót nhất?
- Những phần nào của app được phát triển gấp rút?
- Dev có đánh giá gì về những phần có độ risk cao trong app?
- Những loại vấn đề gì nếu bị phát hiện sẽ trở nên rất tồi tệ?
- Những loại vấn đề gì có thể bị khiếu nại từ khách hàng?
- Những loại testing nào có thể kiểm tra cùng lúc nhiều chức năng?
Dựa vào những điểm này sẽ giúp bạn đánh giá và trả lời được những phần nào cần phải thực hiện test. Như vậy sẽ làm giảm đáng kể độ risk khi release dự án trong một khoảng thời gian có hạn.
II. Áp dụng test coverage:
1. Định nghĩa test coverage:
- Coverage nghĩa là “Cần thực hiện testing cái gì? và Thực hiện testing bao nhiêu nhiêu là đủ?”
- Test coverage sẽ giúp kiểm soát chất lượng testing, và hỗ trợ tester viết và cover được những phần bị thiếu hoặc không hợp lệ.
2. Làm thế nào để áp dụng phương pháp test coverage?
- Điều thứ nhất, QA team cần phải nắm rõ được khối lượng công việc, các task và các task đó ở phần nào. Bằng cách đó, QA team có thể đánh giá được cần phải thực hiện testing như thế nào.
- Thứ hai, xem xét lại resource và phân chia công việc để thực hiện và quản lý quá trình testing một cách hiệu quả
Tham khảo bảng dưới đây:
3. Làm sao để chắc chắn mọi phần đã được test và test một cách tốt nhất có thể?
- Mỗi tester nên đánh giá được các yêu cầu và có phương pháp testing tương ứng
- Đánh độ ưu tiên cho các yêu cầu và tập trung vào phần cần thiết nhất
- Nắm được sự thay đổi giữa các bản release để từ đó có thể xác định chính xác hơn những yêu cầu quan trọng và tập trung vào phần đó
- Áp dụng test automation
- Sử dụng test manager tool để nắm được chính xác hiện trạng
- Phân chia công việc 1 cách thông minh: phân chia những task quan trọng cho những thành viên tốt nhất và phân chia những task mới ít quan trọng hơn cho những thành viên mới
- Duy trì checklist cho tất cả các task và các hoạt động
- Tương tác nhiều hơn với các team để có nhận định và đánh giá sâu hơn cho các hoạt động của app
- Theo dõi tất cả các bản build và các phần đã fix
- Xác định vùng ảnh hưởng sau mỗi bản build (khi có thể), như vậy những người sau sẽ tránh được lỗi tương tự
Không phải cứ thực hiện test càng nhiều, thì sẽ có kết quả test càng tốt.
Trên thực tế, khi bạn test càng nhiều mà không có bất cứ chiến lược nào, bạn sẽ phải đầu tư vào đó rất nhiều thời gian. Và điều này hoàn toàn đi ngược lại với thực tế phát triển phần mềm.
Vì vậy, mỗi tester cần trang bị cho mình những chiến lược (test strategy) và những cách tiếp cận (test approach) để có thể đảm bảo và nâng cao chất lượng testing.
- Viết ứng dụng Smartphone và Tablet
- 5 lý do sở hữu một ứng dụng di động là cần thiết đối với doanh nghiệp vừa và nhỏ
- Các nền tảng công nghệ hỗ trợ cho khởi nghiệp tiết kiệm, hiệu quả,...
- Hệ thống điều hành, tìm gọi và quản lý xe sử dụng công nghệ mới
- Ứng dụng bán hàng trên smartphone, smart TV, mạng xã hội...
- Hướng dẫn cài ứng dụng, phần mềm cho Android trực tiếp bằng tập tin APK
- IoT là gì? ứng dụng của IoT trong cuộc sống hiện đại
- Platform là gì?
- Khắc phục lỗi đăng nhập Windows 10, không thể login vào Windows 10
- Cách đổi tên thiết bị Android
- Hệ thống order chuyên nghiệp cho quán ăn, cafe, nhà hàng...
- 100 Website đặt backlink miễn phí chất lượng
DVMS chuyên:
- Tư vấn, xây dựng, chuyển giao công nghệ Blockchain, mạng xã hội,...
- Tư vấn ứng dụng cho smartphone và máy tính bảng, tư vấn ứng dụng vận tải thông minh, thực tế ảo, game mobile,...
- Tư vấn các hệ thống theo mô hình kinh tế chia sẻ như Uber, Grab, ứng dụng giúp việc,...
- Xây dựng các giải pháp quản lý vận tải, quản lý xe công vụ, quản lý xe doanh nghiệp, phần mềm và ứng dụng logistics, kho vận, vé xe điện tử,...
- Tư vấn và xây dựng mạng xã hội, tư vấn giải pháp CNTT cho doanh nghiệp, startup,...
Vì sao chọn DVMS?
- DVMS nắm vững nhiều công nghệ phần mềm, mạng và viễn thông. Như Payment gateway, SMS gateway, GIS, VOIP, iOS, Android, Blackberry, Windows Phone, cloud computing,…
- DVMS có kinh nghiệm triển khai các hệ thống trên các nền tảng điện toán đám mây nổi tiếng như Google, Amazon, Microsoft,…
- DVMS có kinh nghiệm thực tế tư vấn, xây dựng, triển khai, chuyển giao, gia công các giải pháp phần mềm cho khách hàng Việt Nam, USA, Singapore, Germany, France, các tập đoàn của nước ngoài tại Việt Nam,…
Quý khách xem Hồ sơ năng lực của DVMS tại đây >>
Quý khách gửi yêu cầu tư vấn và báo giá tại đây >>