Những kỹ năng cần thiết của một Tester

Bạn có là một Tester giỏi hay chưa? Hay bạn đang trên con đường học hỏi, hoàn thiện, phát triển bản thân để trở thành một Tester “đáng gờm”. Bài viết hôm nay mình tổng hợp cho mọi người những kỹ năng cần thiết đối với một Tester:

1. Kỹ năng phân tích:

Trước hết, bạn cần có 1 kỹ năng phân tích nhanh nhạy và chính xác, rèn luyện được khả năng nhìn nhận vấn đề từ nhiều góc độ, nhiều hướng. Để có góc nhìn đó, bạn cần phải phân tích yêu cầu khách hàng đưa, phân tích trong từng function nhỏ mà bạn đang test, tìm ra được những điểm mấu chốt, quan trọng, dự đoán được những vùng có thể xảy ra bug nhiều và phải kết hợp phân tích trong các function liên quan đến nhau mà bạn đang test.

2. Luôn luôn học hỏi, học hỏi nhanh:

Công nghệ ngày càng phát triển, nó phát triển từng ngày, mỗi ngày đều có nhiều điều mới mẻ. Nếu chúng ta không cập nhật thông tin thì chúng ta sẽ tụt hậu. Do vậy, chúng ta phải không ngừng học hỏi, trau dồi kiến thức, nổ lực tìm kiếm, cập nhật mọi sự thay đổi để phục vụ cho công việc, lĩnh vực mà chúng ta đang ngày đêm gắn bó cùng nó. Bạn phải sẵn sàng chuyển đổi, học domain khác và nhìn các domain ở các góc độ khác nhau. Đừng bao giờ suy nghĩ mình học đủ rồi hoặc mình giỏi rồi. Bởi lẽ, nếu bạn biết càng nhiều, năng lực của bạn ngày càng được đánh giá cao.

3. Chi tiết, tỉ mỉ, cẩn thận, kiên trì

Đây là những kỹ năng “không thể thiếu” đối với một Tester. Chúng ta sẽ không thể bỏ qua từng cái dấu chấm hay dấu phẩy, icon có bị méo xệch hay hàng vàn, hàng tỉ thứ nhỏ nhặt khác. Nhưng tất cả đều vô cùng quan trọng, nó hướng đến sự thân thiện với người dùng, đáp ứng nhu cầu khách hàng. Sản phẩm hoàn thiện, chất lượng cao sẽ tạo thêm niềm tin và uy tín của công ty với đối tác.

4. Có nền tảng kỹ thuật

Công việc của một tester là vô cùng quan trọng, do đó người làm kiểm thử phần mềm cũng đòi hỏi những kỹ năng chuyên môn mà không phải ai cũng có thể sở hữu hoặc trang bị trong một sớm một chiều. Các tester cần phải hiểu và thông thạo ít nhất một ngôn ngữ lập trình. Vì thế kiến thức chuyên môn về lập trình là điều đầu tiên cần có của một tester.
Họ còn phải có được những kỹ năng thiết kế, lập trình, phân tích và hiểu biết về các ứng dụng khác nhau của các phần mềm vì kỹ sư kiểm định phần mềm cũng giống như bác sĩ chẩn bệnh, phải nắm vững kiến thức mới có thể chẩn đoán chính xác.

5. Kỹ năng giao tiếp

Một tester giỏi là người luôn tỏ ra thoải mái với các cuộc xung đột. Nếu nhiều lần, nó sẽ trở nên khó khăn trong việc xác định nguồn gốc của lỗi. Ví dụ, nó có thể là lỗi mã hóa, lỗi tài liệu, lỗi thiết kế và thậm chí nó có thể chẳng phải là lỗi. Nhưng công việc của Tester là việc thông báo lỗi. Và không phải một developer nào cũng chấp nhận những thiếu sót của mình. Vậy thì lúc này kỹ năng giao tiếp chính là chìa khóa giải quyết vấn đề. “Nếu bạn có kỹ năng giao tiếp tốt, thì bạn sẽ có được 70% sự đảm bảo công việc”.

6. Xem mình như khách hàng, mình là người sở hữu sản phẩm

“Tester” là người không bị ảnh hưởng bởi các ứng dụng được phát triển và họ test dựa trên kinh nghiệm thực tế mà tiến hành sử dụng các ứng dụng với tất cả các tình huống có thể. Một Tester tốt sẽ biết rằng người dùng có thể tạo ra trăm ngàn lỗi khi học tập và sử dụng một sản phẩm. Người dùng thực sự sẽ học cách sử dụng sản phẩm bằng cách thử và xem điều gì đã xảy ra hơn là chỉ ngồi đọc hướng dẫn sử dụng. Hãy đặt mình là người dùng cuối để có cái nhìn tổng quan nhất, cái nhìn bao rộng, tổng quát, đánh giá cao nhất về sản phẩm của mình. Từ đó sẽ phát hiện ra được những lỗ hổng, những bug phát sinh trong quá trình test. Hãy luôn xem mình là người dùng đầu tiên để trải nghiệm sản phẩm.

7. Luôn đặt câu hỏi, luôn có suy nghĩ không bao giờ hết bug trong sản phẩm, tìm mọi cách tìm ra bug

Nếu bạn có: Nhiều câu hỏi hơn, Nhiều sự cố hơn, Nhiều câu trả lời hơn, Nhiều sửa lỗi hơn thì lẽ dĩ nhiên bạn sẽ có một sản phẩm: Chất lượng hơn. Là một tester, bạn khám phá mọi thứ bằng cách đặt ra các câu hỏi cho chính mình và cho những người khác. Không bao giờ được có suy ghĩ hết bug. Không có sản phẩm nào là hoàn hảo. Nó chỉ có thể hoàn thiện và sẽ ngày càng hoàn thiện nếu bạn phát hiện ra những sai sót. Không thể dễ dàng cho một case nào đó pass, mà hãy suy nghĩ để làm sao có thể xảy ra những trường hợp fail. Trong trường hợp bạn không hiểu logic hoặc bất cứ thứ gì đó về yêu cầu mà khách hàng đưa ra, hãy luôn mạnh dạn đặt câu hỏi với mình, với dev, với đồng nghiệp, với sếp của mình, bất cứ ai có thể giải thích được những vấn đề thắc mắc của mình. Hãy luôn đặt những câu hỏi trong đầu để suy nghĩ ra những trường hợp có thể xảy ra bug.

8. Thừa nhận lỗi của bản thân

Mắc lỗi là chuyện khá bình thường của con người. Bất cứ ai cũng có thể mắc lỗi. Nhưng vấn đề lớn nhất là chúng ta phải biết thừa nhận chúng. Đôi lúc, bạn có thể bỏ sót một vài lỗi quan trọng hoặc log sai các lỗi. Thay vì cãi nhau và tranh luận, thì hãy thừa nhận các lỗi và cố gắng không lặp lại. Đó là một đức tính tốt mà một tester cần có.

9. Tiếng Anh, ngoại ngữ tốt là một ưu thế và thực sự cần thiết

Đối với dân IT nói chung và Tester nói riêng thì ngoại ngữ là điều không thể thiếu, nó giúp bạn đọc hiểu tài liệu, update công nghệ, giao tiếp với khách hàng,… điều đó cũng có nghĩa bạn có nhiều cơ hội thăng tiến hơn.
Trong kiểm thử phần mềm, giao tiếp đóng vai trò cực kỳ quan trọng. Đối với các dự án outsource thì việc giao tiếp bằng tiếng Anh gần như là không thể tránh khỏi. Nếu dự án của bạn là dự án nội bộ thì việc trau dồi tiếng Anh cũng sẽ giúp bạn tiếp cận và cập nhật kiến thức về kiểm thử phần mềm tốt hơn.

Lời kết: Không phải ai sinh ra cũng giỏi, vấn đề ở đây là bạn có dám nỗ lực, dám thay đổi, hoàn thiện bản thân mình hay không???