0

Xu thế testing thời đại mới: Crowd Testing

Crowdsourced testing là một xu thế mới trong ngành kiểm thử của thế giới, nó khai thác được lợi ích, tính hiệu quả của đám đông và nền tảng điện toán đám mây. Đây là một hình thái đã hình thành và ngày càng phổ biến. Mô hình này giúp doanh nghiệp khai thác ý tưởng, trí tuệ tiềm ẩn của nhiều người, giúp giảm chi phí và gia tăng giá trị công việc.Nó khác với testing kiểu truyền thống là việc test sẽ được thực hiện bởi các tester khác nhau, tới từ nhiều nơi khác nhau, phần lớn không phải là những người chuyên nghiệp. Phần mềm sẽ được nhóm người này sử dụng dưới các nền tảng khác nhau nên sẽ làm nó tin cậy hơn, giảm thiểu chi phí hơn, nhanh và giảm thiểu số bug tối đa. Ngoài ra, số lượng người test này trên khắp thế giới nên có thể test được usability testing (kiểm thử xem có thể sử dụng dễ dàng được hay không). Loại hình test này được áp dụng khi phần mềm theo hướng tập trung vào người sử dụng. Ở góc độ chuyên nghiệp, crowd testing nhằm giải quyết những vấn đề cụ thể như:

  • Cross-culture: Ứng dụng của bạn sẽ được sử dụng ở level toàn cầu, vì người test ở nhiều đất nước khác nhau, văn hóa, ngôn ngữ, tôn giáo và nhận thức / tư duy khác nhau. Có thể coi nó như kiểu localization testing cũng được nữa, vì người dùng ở khắp nơi, có múi giờ, ngôn ngữ khác nhau.
  • Alternative view: Với một nhóm được chọn ngẫu nhiên bao gồm những người chuyên nghiệp lẫn không chuyên, bạn sẽ có số liệu usability test có tính trung thực cao hơn. Kiểu như 1 nhóm người được lựa ra ngẫu nhiên, họ sẽ có mindset lẫn sự khám phá khác nhau, chắc chắn monkey-testing hay usability testing sẽ vươt trội so với những thành viên trong nhóm cùng test sản phẩm do nhóm đã tham gia phát triển sản phẩm được 1 thời gian nhất định. Vd: nếu test phần registration thì sau vài lần self-test bạn / hoặc developer trong nhóm sẽ thao tác rất nhanh để đi qua bước đó. Cảm quan về layout, color, không còn mới nên có thể bỏ qua những thứ quan trọng, hoặc làm cho user đời thường cảm giác khó chịu mà mình lại bỏ qua. User sẽ có các phản hồi về sản phẩm rất nhiều để bạn có thể đánh giá và kiểm chứng tính đúng đắn, hiệu quả của tính năng cũng như giao diện.
  • Cái tôi cá nhân . Khi được mời test 1 sản phẩm, bạn sẽ nghĩ gì? OK, Hãy vọc vạch thử xem app này có hay ho không nào. Để xem họ làm ăn ra sao, kiểu gì chả có lỗi? và “tôi” thích thú khi tìm ra lỗi, và cảm giác khi mình (là 1 người không chuyên) bới móc sản phẩm để tìm lỗi và được thù lao trên mỗi bug được phát hiện ra thì khá là hay ho.
  • Tài nguyên test: làm sao mà team bạn có đủ tất cả thiết bị di động trên đời để test được. Dự án tôi sử dụng có 7, 8 con ios và android, 2 con tablet nữa. Thế là hơi nhiều rồi. Nhưng nếu chơi kiểu test đám đông thì tưởng tượng xem, trăm thiết bị là ít, hơn thế, họ còn dùng với băng thông khác nhau, địa điểm địa lý rồi trạng thái sử dụng khác nhau…
  • Tiết kiệm chi phí: chỉ phải trả tiền cho các bug được đánh giá là valid.
  • Thời gian: Lượng lớn người dùng trên trái đất cùng sử dụng ứng dụng thì test cần ít thời gian hơn, ứng dụng sẽ go live nhanh hơn. Còn 1 số nhược điểm nữa chứ không phải không, cái gì cũng có 2 mặt cả:
  • Bảo mật là không được rồi, nếu muốn bảo mật thì không thể để cho app public được. Mà nếu vừa muốn crowd test lại vừa muốn bảo mật thì hãy chơi ở level công ty (trong phần dưới tôi có nói).
  • Trò chuyện với các tester trên khắp quả đất có vẻ khó. Giả sử các tester mà bạn crowd test dùng tiếng anh hết thì không phải ai cũng xài tiếng Anh ngon. Có khi phải confirm qua lại mà lại khác múi giờ hay họ bận mà không liên lạc được thì...Chẳng nhẽ lại reject bug của họ khi mình chưa hiểu thì cũng quá tội 😄 Còn chưa kể khác văn hóa, ví dụ trò chuyện với các tester khác cần sự giao tiếp đặc thù quá mà mình không biết sẽ tốn thời gian để nói chuyện.
  • Các tester không chuyên có khi chỉ hớt váng được các bug bề nổi, mấy bug khó bắt, khó tái hiện hơn thì họ sẽ bỏ qua, vì tính tiền theo bug mà, không ai kì cạch để bắt 1 bug khó, trong khi thời gian bỏ ra lại không… ăn tiền.
  • Việc test không được lên kế hoạch và phân chia giưa mọi người với nhau. Cũng không được tracking (theo dõi). Cả trăm người cùng test 100 cases, test đè lên nhau, không có phương hướng cụ thể chẳng hạn. Còn không , nếu bạn không muốn chơi ở level "công dân toàn cầu", thì có thể thực hiện trong ao nhà mình, nhưng sẽ nâng cấp lên ao to hơn chút, với điều kiện là dự án không cần phải bảo mật quá đà. Các bước tôi có thể gợi ý như sau:
  • Thời điểm: Sau khi QC dự án test xong, các lỗi đã được xử lý xong xuôi , gửi email cho cả công ty để “dùng thử” sản phẩm.
  • Đối tượng: Tất cả mọi người, từ lễ tân tới kế toán hay các PM, QC, DEV dự án khác.
  • Thời gian test: phải giới hạn thời gian trong ngày (chứ không thì không ai dùng sản phẩm của bạn đâu) , nhưng cũng phải đủ dài, chứ không thì dùng ứng dụng 30 phút thôi thì không ăn thua.
  • Xử lý phản hồi : user có thể mail cho đội dự án về các bug, phàn nàn, những cái chưa được. Hoặc tạo file google sheet cho tất cả mọi người update vào, tùy bạn.
  • Đánh giá phản hồi : tập trung vào những ý kiến khách quan và có tính cụ thể cao. Tránh những ý kiến kiểu như “liệu tăng scale lên 1000 concurrent users thì sẽ thế nào?”, hoặc “Ứng dụng khó dùng vãi..!”,v.v.. Loại ngay các comment vô thưởng vô phạt, không máng tính xây dựng, chỉ tập trung cho cái gì hữu ích nhất, khách quan nhất.

Thay cho phần kết, mọi người có thể lên và vào các trang uTest, TryMyUI, mturk.com, UserFeel...vô cùng nhiều, và nó là cơ hội cho mọi người kiếm tiền từ test, là minh họa sống động nhất cho bài viết này. Dù gì thì nếu bạn không xài, bạn có thể coi đây là bài viết nâng cao 1 khía cạnh mới cho testing, biết thêm 1 nhánh phát triển trong công việc này. Có thể nó sẽ không còn là xu thế trong tương lai, nhưng hiện tại, hãy đón nhận nó.


All rights reserved

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí