Nghề Tester-Chuyên viên kiểm thử phần mềm ngày càng phổ biến ở Việt Nam. Nhưng không phải ai quan tâm đến lĩnh vực phát triển phần mềm cũng hiểu đúng, hiểu rõ về công việc của những người “vạch lá tìm sâu” này.
Tôi có một cô bạn học Ngân hàng, ra trường chưa xin được vị trí nhân viên quầy giao dịch như mơ ước. Trong nhóm bạn thân chúng tôi, đứa làm lập trình, đứa làm kiểm thử phần mềm. Cô bạn ấy cũng muốn thử sức với vị trí kiểm thử, bắt đầu tìm hiểu và thấy nhiều job tuyển “có vẻ dễ xin việc”, rồi tìm hiểu công việc cụ thể, cũng với cảm nhận là “đơn giản”.
Tester giữ vai trò kiểm thử, đảm bảo phần mềm hoạt động đúng theo yêu cầu của khách hàng và phải đáp ứng yêu cầu của người dùng. Vậy tại sao nhiều bạn lại ngộ nhận rằng ai cũng có thể làm kiểm thử phần mềm vậy? Chúng ta cùng tìm hiểu một vài nguyên nhân cơ bản sau:
Từ thực tế rất nhiều tester không phải là sinh viên tốt nghiệp ngành IT hoặc nhiều bạn học IT nhận thấy việc lập trình quá khó nên xác định ra trường làm tester mà không coi trọng các kỹ năng lập trình. Người ta ngộ nhận quan điểm làm kiểm thử không yêu cầu kỹ năng lập trình. Có lẽ vì thế mà họ nghĩ làm tester rất đơn giản.
Đây là một trong những ngộ nhận phổ biến nhất về công việc kiểm thử phần mềm. Đúng là so với công việc của Developer thì nhiệm vụ của Tester có phần nào “nhàn” hơn, vì: Không có Tester thì Developer vẫn làm ra được sản phẩm phần mềm. Nhưng chỉ có Tester thì không thể. Developer viết một sản phần mềm quả thực rất khó so với việc tester đóng vai trò là người dùng để kiểm thử. Nhưng cũng không thể vì thế mà cho rằng trở thành tester là dễ. Nghề Tester cũng có rất nhiều áp lực riêng:
Có ứng viên chia sẻ trong buổi phỏng vấn vào vị trí kiểm thử phần mềm rằng họ được mong muốn trở thành lập trình viên nhưng chưa tìm được việc phù hợp nên ứng tuyển công việc kiểm thử. Họ không hề đắn đo rằng mình đã được đào tạo bài bản về kiểm thử hay chưa? Phải chăng kiểm thử là những bước đầu tiên của lập trình. Và có cả trường hợp ngược lại nhiều lập trình viên nhận thấy công việc vất vả quá, khó quá lại có suy nghĩ chuyển sang làm Tester.
Thực ra kiểm thử và lập trình là 2 công việc khác nhau và đòi hỏi những kỹ năng chuyên môn khác nhau. Không nên xem thường mức độ khó dễ của nghề kiểm thử.
Nếu chỉ nhìn vào khoảng thời gian một người mới tiếp cận với kiểm thử phần mềm cho đến khi họ có thể làm được việc thì đúng là không lâu. Sau một thời gian trải nghiệm vị trí Tester, họ cũng nhận định công việc kiểm thử “dễ thật”. Tuy nhiên, họ không nhận ra rằng làm được việc và làm xuất sắc là khác nhau. Kiểm thử phần mềm đòi hỏi những kỹ năng chuyên môn mà không phải ai cũng có sẵn như niềm đam mê, tò mò, khả năng sáng tạo, khả năng quan sát, phân tích, trình bày, tranh luận, vv…và cả kiến thức lập trình.
Tố chất của Tester giỏi nằm ở kỹ năng đặt câu hỏi, đặt vấn đề. Testing không chỉ gói gọn trong việc xác nhận sản phẩm có vận hành đúng theo yêu cầu khách hàng hay không, mà còn là đánh giá xem những yêu cầu đó có phù hợp với nhu cầu của người sử dụng? Việc đặt câu hỏi tốt sẽ giúp gợi mở nhiều vấn đề quan trọng của sản phẩm.
Công việc của một Tester không chỉ dừng lại ở việc kiểm thử xác nhận theo yêu cầu mà họ có thể phải tham gia phân tích, đánh giá yêu cầu và đưa ra những đề xuất để cải thiện tính năng của sản phẩm, không phải yêu cầu nào của khách hàng cũng đúng, không phải hướng phát triển nào của dev cũng hợp lý. Thông qua việc đánh giá, phân tích tester mới có thể xác định các rủi ro về chất lượng (quality), thực hiện hoạt động kiểm thử về bảo mật (security), hiệu năng (performance), tính dễ sử dụng (usability),… Vậy nên khả năng phân tích càng tốt và tính sáng tạo càng cao thì công việc của bạn sẽ càng hiệu quả và lý thú. Sự tò mò giúp bạn luôn muốn tìm hiểu, khám phá thêm về sản phẩm. Còn sáng tạo giúp bạn nghĩ ra nhiều trường hợp kiểm thử thú vị mà các đặc tả, tài liệu hướng dẫn ban đầu chưa bao phủ hết, chưa đề cập đến.
Điều đó tạo nên sự khác biệt giữa Tester làm được việc và Tester giỏi.
Ví dụ, khi nhận được yêu cầu, đa số Tester chỉ dừng ở mức nhận yêu cầu, viết – chạy test case. Nếu phần mềm hoạt động đúng theo yêu cầu đặc tả ban đầu thì cho Test Case “Passed.” Tuy nhiên, trong quá trình ấy, sẽ có những Tester luôn đặt ra những câu hỏi sau: Tại sao tính năng được thiết kế như vậy? có thực sự hữu ích cho người dùng? Thực hiện nhiều hành động bất thường khác: sẽ như thế nào nếu người dùng làm [X] thay vì làm [Y] sau đó làm [Z]? v.v… Từ đó, có những gợi ý tốt hơn cho sản phẩm. Khách hàng cũng đồng ý và sản phẩm cũng chất lượng hơn.
Sở dĩ quan niệm trên tồn tại vì có một số công ty tuyển tester với yêu cầu khá đơn giản, có thể do dự án gấp hoặc chỉ để thực hiện những công việc kiểm thử cơ bản như:
Công việc không có sự sáng tạo, logic bạn sẽ chỉ test như một cái máy, mà không hiểu nguyên nhân, cơ chế hoạt động… ở phía sau. Hệ quả là nhiều lỗi tiềm ẩn bị bỏ sót, không có sự tương tác, trao đổi với khách hàng để thay đổi yêu cầu khi cần thiết, làm ảnh hưởng đến việc bảo trì hoặc mở rộng hệ thống/sản phẩm sau này. Như vậy, có thể coi là Tester thực thụ được không? Còn thực tế, kỹ năng tối thiểu của một Tester bao gồm:
Nếu ai đó có quan niệm nghề Tester rất đơn giản và ai cũng có thể làm thì cần phải nhìn nhận lại. Không có công việc nào là dễ dàng nếu như mình không có đủ kỹ năng cần thiết để làm hoặc chưa bao giờ làm. Vấn đề làm tester thì dễ vì test kỹ hay không kỹ, test nhiều hay test ít đều có thể làm được nhưng quan trọng là chất lượng phần mềm. Tóm lại, làm tester dễ hay khó, đơn giản hay không thì tuỳ thuộc vào dự án, tính chất sản phẩm phần mềm và kiến thức của Tester về mảng đang làm. Có thể dễ với người này, nhưng khó với người kia. Có thể nhàm chán với người này nhưng lại thú vị với người khác.
Tham khảo: https://itviec.com/blog/nghe-tester/
You need to login in order to like this post: click here
YOU MIGHT ALSO LIKE