10 Thực tiễn đối với nhóm QA để bàn giao sản phẩm chất lượng, nhanh
Trong quá trình xây dựng và phát triển dự án , sẽ có nhiều mốc thời gian để đưa ra bản phát hành , mỗi bản phát hành chính có thể bao gồm các tính năng mới , hay các tính năng thay đổi , hay các vấn đề đã fix bug.Thời gian đến ngày phát hành rất khó tránh khỏi việc over time hya thậm chí là over ...
Trong quá trình xây dựng và phát triển dự án , sẽ có nhiều mốc thời gian để đưa ra bản phát hành , mỗi bản phát hành chính có thể bao gồm các tính năng mới , hay các tính năng thay đổi , hay các vấn đề đã fix bug.Thời gian đến ngày phát hành rất khó tránh khỏi việc over time hya thậm chí là over night.Vậy để giảm thiểu hoặc tránh khỏi việc OT ,ON này chúng ta sẽ có 10 thực tiễn tốt nhất cho 1 nhóm QA để có thể đảm bảo đượcsản phẩm được phát hành một cách chất lượng nhất , nhanh nhất.
1.Phá vỡ vai trò và trách nhiệm theo kiểu truyền thống của QA
Xác định vai trò và trách nhiệm một cách mới mẻ hơn, luôn luôn lắng nghe feedback của khách hàng về các vấn đề lỗi, luôn tích cực tham gia các cuộc hội thảo thiết kế, bằng khả năng và kinh nghiệm của mình để phát hiện lỗi trước khi Khách hàng phát hiện lỗi, điều này làm giảm đáng kể thời gian trong chu kỳ phát triển phần mềm.
2.Lựa chọn cẩn thận các tiêu chí phát hành
Trước mỗi bản phát hành , bạn có thể test tất cả mọi thứ ở hệ thống đó , tuy nhiên nếu trường hợp thời gian có hạn , bạn hãy tin tưởng sản phảm của mình và tập trung test vào những phần có thay đổi lớn , những thay đổi quan trọng Trước khi đến với bản release tiếp theo ,nhóm QA sẽ làm việc với tất cả các bên liên quan để hiểu được những phần nào của sản phẩm sẽ có sự thay đổi , phần nào có sự cập nhật và sẽ thêm mới những gì .Sau đó những thông tin đó sẽ được đội QA sử dụng để xét độ ưu tiên cho các trường hợp thử nghiệm.Để từ đó tập trung vào những thay đổi đó , những phần sẵn có sẽ sử dụng auto test.Nếu không có gì thay đổi ở các phần còn lại thì việc test trở nên nhanh chóng , dễ dàng hơn .Chính vì thế đội QA nên có những lựa chọn tiêu chí phù hợp , đúng đắn hơn cho mỗi phản phát hành .
3.Ưu tiên sửa lỗi theo cách sử dụng
Fix bugs là điều không thể thiếu trong quá trình phát triển phần mềm .Nhưng câu hỏi đặt ra là fix bug gì ? Đội ngủ QA cũng như những người dùng cuối , chúng ta đang trải nghiệm sản phẩm , vị vậy khi thực hiện kiểm tra 1 sản phầm nào đó , nên ưu tiên những lỗi mà người dùng thường xuyên gặp , những lỗi nghiệm trọng mà người dùng có thể thấy ngay, những lõi ít gặp và nhỏ nhặt sẽ ít được người dùng chú ý .Chính vì thế , đội ngũ QA nên dựa vào điều này để xét độ ưu tiên cho việc fix bug.Có thể fix những lỗi nghiệm trọng , hay xảy ra trước cho bản phát hành lần này , những lỗi ít nghiêm trọng sẽ được fix trong bản phát hành tiếp theo.Tuy nhiên , để dảm bảo sản phẩm hoàn hảo hơn , cần lắng nghe ý kiến feedback từ người sử dụng .
4.Áp dụng cách tiếp cận 2 cấp để kiểm tra tự động
Trường hợp nếu có 1 commit của dev mà làm cho chức năng chính bị phá vỡ , bằng bất cách nào phải thông báo cho dev, nhưng đồng nghĩa với việc QA không thể test toàn bộ hệ thống .Điều đó mất rất nhiều thời gian.Chính vì thế chúng ta nên áp dụng cách tiếp cận 2 cấp:
- Cấp 1: Chạy thử ngiệm tất cả commit dựa trên code có sẵn và báo cáo những thay đổi
- Cấp 2: Chạy auto test hồi quy vào ban đêm Hãy tính toán và cân bằng thời gian giữa 2 cấp kiểm tra,nó sẽ giúp bạn rút ngắn thời gian 1 cách đáng kể.
5.Thực hiên test trên môi trường gần nhất với Khách Hàng
Đối với mỗi QA, việc nghe những bình luận chủ quản bên phía phát triển (dev) như là : Tôi chạy trên máy tôi rất OK, rất mượt .Thì để tránh được trường hợp này , QA nên giải thích rõ rằng : cả bên đội phát triển cũng như đội kiểm thử phải thực hiện test và trên môi trường gần nhất đối với khách hàng như là staging để đảm bảo rằng sản phẩm khi được mô phỏng trên môi trường của Khách Hàng là tốt nhất.Điều đó cũng ó nghĩa sản phẩm phải chạy chính xác nhất trên cùng một môi trường chứ không phải 1 môi trường (local, máy dev) như bên phát triển nói.
6.Thành lập một đội ngũ dành riêng cho test bảo mật
Bởi vì khách hàng tiêu thụ các sản phẩm như là một phần mềm như là một dịch vụ cung cấp, tất cả dữ liệu được lưu trữ trên các máy chủ bên phát triển và đội QA cần phải thực hiện kiểm tra bảo mật trước mỗi bản phát hành. Các lỗ hổng bảo mật có xu hướng được người dùng khám phá, và những vấn đề này có thể nhanh chóng đẩy về khách hàng. Để ngăn chặn điều đó, cần thành lập một nhóm thử nghiệm dành riêng để thực hiện đầy đủ các thử nghiệm thâm nhập trên các phiên bản ổn định của các sản phẩm sớm và sẽ được phát hành. Trước khi bắt đầu thử nghiệm,QA sẽ giới thiệu ngắn gọn về các tính năng mới trong các phiên bản sắp tới và môi trường sản phẩm. Nhóm kiể thử bảo mật sẽ sử dụng thông tin đó để kiểm tra lỗ hổng bảo mật để cố xâm nhập vào hệ thống. Những thành viên trong nhóm này được đào tạo an toàn nghiêm ngặt và quen thuộc với các tiêu chuẩn an toàn của công ty và ISO có liên quan với chuyên môn trong các ứng dụng trên đám mây.
7.Thành lập một đội ngũ dành riêng cho test hiệu
Có đội kiểm tra chuyên dụng thực hiện các bài kiểm tra ngay khi sản phẩm ổn định và giới thiệu ngắn gọn về các phiên bản và tính năng mới để họ có thể đánh giá các rủi ro về hiệu năng. Khi các nhà phát triển giới thiệu một tính năng mới không ảnh hưởng đến hiệu suất, chẳng hạn như một nút trên màn hình, QA chỉ chạy thử nghiệm hồi quy của chúng tôi. Nhưng nếu có sự nghi ngờ rằng một tính năng có thể ảnh hưởng đến hiệu suất,QA sẽ viết và thực hiện thử nghiệm hiệu suất mới.
Luôn cập nhật các nhóm bảo mật và hiệu suất với tất cả các thông tin thích hợp và cung cấp cho họ một môi trường càng gần sản xuất càng tốt. Nếu đội ngũ thực hiện không kiểm tra môi trường, thì raasrt nhiều lỗi sẽ xảy ra. Nếu bạn không có phương tiện để thành lập nhóm làm việc riêng của mình, hãy đào tạo một vài thành viên của nhóm QA để thực hiện kiểm tra hiệu năng.
8.Thực hiện việc chạy một chu kỳ hồi quy
TRong quá trình phát triển phần phềm , việc chạy 1 chu kỳ hồi quy sẽ đảm bảo chất lượng phần mềm là tốt nhất , việc chạy thử nghiệm hồi quy được thực hiện khi có sự thanh đổi từ 1 module , 1 nhánh nào đó , nếu nhận thấy có lỗi ở nhánh đó thì chu kỳ hồi quy sẽ được kích hoạt lại
9.Mô phỏng tài khoản của khách hàng trên môi trường production
Dữ liệu sử dụng để thực thi đôi khi là dữ liệu bên phía nhà phát triển , nó sẽ không thực tế, để đảm bảo sản phầm tương thích với môi trường với mỗi bản phát hành , việc kiểm tra sẽ dùng dữ liệu , tài khoản cuản khách hàng để từ đó chúng ta có thể tìm được lỗi phần dữ liệu.Tuy nhiên sẽ tốn hơi nhiều thời gian cho việc kiểm tra thủ công này.
10.Thực hiện sanity test trên môi trường production
Đội ngũ QA nên thực hiện kiểm tra sanity sau khi phát hành trên tài khoản sản xuất để xác nhận rằng mọi thứ hoạt động như mong đợi, bao gồm tất cả các hệ thống của bên thứ ba. Trước tiên, thực hiện kiểm tra bằng tài khoản sản xuất hiện tại nhưng sau đó tạo một tài khoản mới để xác nhận rằng quy trình sẽ tiếp tục hoạt động chính xác khi khách hàng đăng ký mới. Sau đó tiến hành thử nghiệm sanity trong nửa ngày, trong đó một phần của nhóm kiểm tra tài khoản cũ và phần kia thử nghiệm phần mềm mới tạo. Cuối cùng, kiểm tra các thành phần bên thứ ba, chẳng hạn như hệ thống thanh toán, để đảm bảo tính tương thích của phiên bản.
Kỹ thuật thực hiện đã làm thay đổi vai trò và quy trình truyền thống của kỹ sư QA. Bạn phải có đội ngũ chuyên môn cao và tận tâm, cũng như quy trình kiểm soát chất lượng tiếp tục thông qua sản xuất và hơn thế nữa. Ngoài ra, để thực hiện vai trò của mình một cách triệt để và thỏa mãn khách hàng của bạn, bạn phải sẵn sàng làm khách hàng.
Để duy trì chất lượng sản phẩm trong khi vẫn theo kịp nhu cầu phát hành sản phẩm thường xuyên, nhân viên kiểm tra chất lượng phải phá vỡ khuôn mẫu truyền thống. Bạn phải phát triển các kỹ năng mới, chẳng hạn như thiết kế và phát triển phần mềm, vì vậy bạn có thể tham gia nhiều hơn vào các giai đoạn khác nhau của quá trình phát triển. Thực hiện theo 10 thực tiễn tốt nhất này là một chiến thắng cho QA và doanh nghiệp. Làm đúng và bạn sẽ rút ngắn chu kỳ phát triển và làm cho công việc của các chuyên gia QA của bạn thêm hấp dẫn.