Kinh nghiệm học tập, Kỹ năng mềm

5 kỹ năng Tester nhất định phải có

🍀 Bài viết này liệt kê những kỹ năng cần thiết cho mọi tester từ manual đến kiểm thử tự động để làm tốt công việc của mình và phát triển xa hơn trong sự nghiệp của mình

Kiểm thử phần mềm là một quá trình bao gồm nhiều hoạt động khác nhau nhằm để kiểm tra và đánh giá chất lượng và tính đúng đắn của một phần mềm dựa trên yêu cầu/nhu cầu của người dùng. Trong đó bao gồm các  hoạt động kiểm tra và xác minh hệ thống để xem phần mềm hoạt động đúng theo yêu cầu và mục đích ban đầu chưa. Một trong các mục tiêu chính của việc kiểm thử là giúp tìm lỗi, các khiếm khuyết trong phần mềm trước khi nó được triển khai và sử dụng rộng rãi giúp giảm thiểu rủi ro phần mềm xảy ra sự cố trong quá trình sử dụng. Về khái niệm kiểm thử là gì, bạn có thể xem thêm thông tin chi tiết ở bài viết này 👇👇👇

Và trong quy trình kiểm thử (là chuỗi nhiều hoạt động khác nhau như trên) vừa kể trên, thì mỗi vai trò trong đó sẽ đòi hỏi một tập kỹ năng khác nhau để có thể hoàn thành tốt công việc của mình. Riêng đối với tester, cụ thể là manual tester, do vị trí này đóng vai trò quan trọng trong lĩnh vực phát triển phần mềm và đặc biệt ngày nay, với sự phát triển không ngừng của công nghệ và xu hướng sử dụng phần mềm ngày càng phổ biến, tester đòi hỏi phải tự trang bị nhiều kỹ năng khác nhau để thành công.

Để trở thành một “tester xịn” thì ngoài những kiến thức về chuyên ngành, tester cũng nên trang bị cho mình những kỹ năng mềm thiết yếu. Thật ra, những kỹ năng này không phải chỉ cần có đối với tester thời nay mà từ xưa đã cần rồi. Tuy nhiên, như đã đề cập ở trên, ngày nay nhiều công nghệ phát triển nhanh chóng và thúc đẩy sự đổi mới, nên những kỹ năng sau đây có để giúp “tester thời hiện đại” làm việc hiệu quả hơn.

Kiến thức và kỹ năng về kiểm thử phần mềm

Kiểm thử phần mềm là một lĩnh vực phức tạp và không ngừng phát triển. Để làm việc hiệu quả, người tester cần nắm vững và hiểu rõ các nguyên tắc kiểm thử phần mềm cơ bản và nhiều phương pháp cũng như kỹ thuật kiểm thử khác nhau. Bạn cần có kiến thức cơ bản về một số mô hình phát triển phần mềm, ít nhất như V-modelScrum, để có thể áp dụng quy trình kiểm thử và các kỹ thuật cũng như công cụ (tool) phù hợp ngữ cảnh của dự án để mang lại mức độ hiệu quả cao nhất có thể, giúp nhóm phát hiện lỗi sớm hơn để giảm thiểu rủi ro xảy ra sự cố trên hệ thống trong quá trình sử dụng thực tế. Kiến thức và kỹ năng chuyên ngành kiểm thử này là quan trọng nhất, nếu không thì các kỹ năng khác sẽ kém phần hữu ích.

Có nhiều cách để nâng cao kiến thức và kỹ năng này. Bạn có thể tham gia các khóa học trực tuyến, tham dự hội thảo, đọc sách và bài báo chuyên ngành để nắm bắt các xu hướng mới. Nên nhớ nguyên tắc 70-20-10, 70% học được từ công việc thực tế, 20% học từ xung quanh (qua nhóm, hoặc mạng xã hội, blog post, v.v…), và 10% là học từ các lớp học chính thức (giúp bạn có nền tảng để tự học và có thể bắt đầu dự án).

Kỹ năng lập kế hoạch và đưa ra chiến lược kiểm thử

Công việc này không chỉ riêng của test lead hay test manager, bất kỳ một vai trò hay vị trí nào trong nhóm phát triển phần mềm cũng cần kỹ năng lập kế hoạch và đưa ra cách tiếp cận kiểm thử phù hợp dựa vào chiến lược của công ty và dự án. Nhắc lại, Test lead và test manager thì lên kế hoạch cho dự án, còn bạn thì tự lên kế hoạch cho công việc được giao. Mỗi tester sẽ có cách riêng của họ để kiểm thử một màn hình hay hệ thống nào đó, đó là “chiến lược và cách tiếp cận” riêng của họ để hoàn thành tốt công việc được giao. Thông qua kế hoạch của bạn, bạn có thể phát hiện sớm kỹ năng và kiến thức cần thiết cho dự án này mà bạn đang còn thiếu, giúp bạn có thể chủ động trang bị kiến thức và kỹ năng còn thiếu này.

Để cải thiện kỹ năng này, bạn có thể tìm hiểu về các phương pháp phát triển chiến lược và lập kế hoạch thử nghiệm khác nhau, thực hành cho các loại phần mềm khác nhau. Ví dụ như SMART goal (viết tắt của Specific, Measurable, Achievable, Relevant, và Time-Bound).

SMART goal

Kỹ năng ghi chú và báo cáo lỗi

Trong quá trình làm việc, tester giống như một thám tử, họ luôn tò mò tìm hiểu và khám phá về mọi thông tin liên quan đến dự án, từ đó giúp họ có thể làm rõ yêu cầu và viết test case đầy đủ và hiệu quả. Nếu bạn có khả năng ghi chú nhanh gọn xúc tích, nó sẽ giúp bạn rất nhiều trong lúc đặt câu hỏi (nhất là theo văn viết vì không phải lúc nào cũng có cơ hội nói chuyện trực tiếp với khách hàng, PM hay BA) và trong việc báo lỗi. Khi lập trình viên đọc hiểu bug do bạn báo, thì cơ hội các lỗi này được fix sẽ cao hơn nhiều. Nếu bạn báo lỗi mà người khác đọc không hiểu “nó là về cái gì” thì cơ hội để lỗi này được sửa là bao nhiêu phần trăm? Kỹ năng này giúp bạn báo lỗi tập trung vào thông tin và lỗi thay vì chỉ trích người tạo ra nó (lập trình viên hay PM/BA – nếu liên quan đến lỗi trong tài liệu).

Để cải thiện kỹ năng này, bạn có thể tham khảo những báo cáo mẫu từ nhiều nguồn, thay đổi cách suy nghĩ, nên suy nghĩ về vấn đề và thông tin (what) thay vì con người (who).

Kỹ năng tương tác và làm việc nhóm

Bên cạnh kỹ năng đọc và phân tích tài liệu, ngày càng nhiều công ty áp dụng mô hình Agile, vì vậy sự tương tác giữa con người với con người càng phổ biến, đặc biệt là với khách hàng hay PM, và các vai trò khác như lập trình viên (developer) trong nhóm phát triển phần mềm rất quan trọng. Kỹ năng phối hợp, làm việc nhóm giúp nâng cao hiệu quả trao đổi và đảm bảo mọi người hiểu đúng yêu cầu của khách hàng từ đó giúp bạn lên kế hoạch kiểm thử hiệu quả. Điều này cũng giúp tester xây dựng mối quan hệ với các thành viên trong nhóm và giao tiếp hiệu quả hơn.

Để cải thiện kỹ năng này, bạn nên cởi mở hơn với những phản hồi từ người khác, sẵn sàng chia sẻ ý tưởng và phát triển của mình với người khác, hỗ trợ các thành viên khác trong nhóm và cùng hướng tới mục tiêu chung của dự án. Hơi khó, nhưng đôi khi bạn phải hợp tác và hỗ trợ cho những ý tưởng đi ngược lại với ý tưởng của bạn nhưng được số đông trong nhóm bình chọn.

Kỹ năng tự học và cập nhật kiến thức

Trong bối cảnh ngành phát triển phần mềm (bao gồm các hoạt động kiểm thử) không ngừng phát triển, để luôn là người giỏi nhất ở vị trí được giao, bạn cần có khả năng tự học những điều mới. Điều này đặc biệt đúng khi tham gia các dự án khác nhau trong các công ty gia công phần mềm, mỗi khi tham gia dự án về lĩnh vực (domain) mới, tester phải tìm hiểu về lĩnh vực đó, thường thông qua tự học trên mạng chứ không có nhiều nơi dạy kiến thức về một lĩnh vực nào đó trong vài khóa học ngắn hạn, ví dụ lĩnh vực ngân hàng, bảo hiểm, chứng khoán, v.v… Và việc tìm hiểu và trau dồi kiến thức mới, phương pháp và kỹ thuật kiểm thử nghiệm, một ngôn ngữ lập trình nào đó hay một công cụ mới nghe mọi người bàn về nó như playwright, v.v… là rất quan trọng để giúp bạn luôn ở thế chủ động.

Trong tuần, bận rộn với dự án đang làm thì bạn có thể đọc thông tin từ những trang mạng hay trên medium hay hội nhóm trên facebook. Tham gia nhiều nhóm, nhưng riêng mình thấy nhóm fb TESTING VN là luôn sôi động nhất và có nhiều chia sẻ kiến thức và kinh nghiệm thú vị, rất hữu ích cho người mới như mình. Bạn cũng có thể dành thời gian cuối tuần ngồi vọc phá một cái tool mới nào đó. hoặc nếu có hội thảo, offline về kiểm thử hay liên quan (như về AI, công nghệ mới, v.v…) thì nên tham gia để có thêm kiến thức và cơ hội làm quen anh chị trong ngành.

Tóm lại, để phát triển xa hơn trong công việc và cải thiện kỹ năng kiểm thử của mình, bạn cần phải nỗ lực nhiều hơn. Dưới đây là một số cách giúp bạn nâng cao kỹ năng của mình và phát triển sự nghiệp kiểm thử phần mềm:

  1. Luôn cập nhật kiến thức chuyên ngành: Nên theo dõi các trang web, diễn đàn và cộng đồng chuyên ngành để cập nhật thông tin mới và học hỏi kinh nghiệm từ các chuyên gia khác trong ngành. Đọc sách báo về kiểm thử phần mềm cũng là một cách tuyệt vời để tìm hiểu về kỹ thuật kiểm thử và công cụ mới nhất. 
  2. Tìm kiếm cơ hội thực hành: Học đi đôi với hành! Luôn cố gắng tìm cơ hội để áp dụng kiến thức đã học vào công việc thực tế. Nếu bạn là một tester đang tìm việc thì có thể tham gia các nhóm dự án cộng đồng hoặc thực tập (intern) – không trả phí – để có cơ hội trải nghiệm. Hoặc tham gia các nền tảng freelancer về kiểm thử như TestIO, uTest hay Upwork
  3. Tham gia diễn đàn và các sự kiện về kiểm thử phần mềm: Nên thường xuyên giao lưu và kết nối với cộng đồng tester (cả online hay offline), bạn có thể gặp gỡ và trao đổi với nhiều anh chị chuyên gia nhiều kinh nghiệm trong ngành, là cách để học hỏi và chia sẻ kinh nghiệm nhanh nhất.

Trên đây là báo cáo cuối khóa Fresher Tester – FK58 của em. Cám ơn anh Sơn, chị An và các anh chị Mentor đã dành thời gian xem và sửa bài giúp em.

You Might Also Like

Leave a Reply

Your email address will not be published. Required fields are marked *