Tester là gì? Làm tester cần những gì?
Những năm gần đây, Công nghệ thông tin tiếp tục phát triển mạnh mẽ. Đặc biệt dưới sự tác động của dịch Covid 19 mà tất cả ngành nghề đều chú trọng vào phát triển thêm vào công nghệ.
Vì thế, nhân lực ngày càng rộng mở hơn nữa. Nói về nhân sự trong công nghệ thông tin.
Mọi người sẽ chỉ nghĩ đến như:
- Lập trình viên.
- Quản trị an ninh mạng.
- Hacker.
- Kĩ sư cầu nối.
Những vị trí hết sức phổ biến và quen thuộc. Tuy nhiên:
Có 1 vị trí hết sức quan trọng và tiềm năng mà ít người biết đến, đó chính là ngành tester. Để hiểu rõ hơn về mảng này, ở bài viết hôm nay, mình xin chia sẻ cụ thể Tester là gì?. Những điều cần thiết để trở thành một Tester.
Bạn biết gì về tester?
Tester có 1 cái tên khá mỹ miều Quality Control. Đúng vậy công việc của 1 tester trong dự án có nghĩa chính là kiểm soát chất lượng của sản phẩm đầu ra.
Công việc chính của một Tester đó là kiểm tra chất lượng phần mềm, khảo sát phần mềm đạt chuẩn trước khi tiến hành bàn giao đến tay người dùng.
Nói cách khác. Tester sẽ sử dụng những test cases được tạo ra để so sánh điều kiện thực tế của phần mềm với điều kiện mong muốn trong yêu cầu của phần mềm.
Nếu có những điều không giống, thì tester có nhiệm vụ thông báo cho mọi người trong dự án thấy đó là bugs, defects, errors,… để chỉnh sửa trước khi tung sản phẩm. Có thể nói đây là dân chuyên đi vạch lá tìm sâu, chuyên trách về chất lượng sản phẩm để đảm bảo hạn chế rủi ro thấp nhất khi đến tay người dùng cuối.
Một phần mềm có thể chạy mà không cần qua kiểm thử, nhưng xác suất sai sót sẽ khá cao, nên trong hầu hết các dự án chuẩn quy trình thì QC hay tester là một role vô cùng quan trọng trong đội ngũ phát triển phần mềm.
Tester có nhiều mảng, nhưng chủ yếu chia thành 2 mảnh chính là Manual Tester và Automation Tester
Kiểm tra thủ công:
Là người kiểm thử phần mềm một cách thủ công hay là chạy các trường hợp kiểm thử bằng cơm. Mặc dù không yêu cầu cao về kiến thức lập trình tuy nhiên muốn làm một Manual Tester đòi hỏi bạn phải rành test manual, có đam mê và tư duy tìm lỗi.
Kiểm tra tự động hóa:
Là người kiểm thử dựa trên các công cụ hỗ trợ tự động. Kết quả kiểm thử của một Automation Teste r đa phần sẽ đáng tin cậy hơn, tuy nhiên để đảm nhận vị trí này đòi hỏi bạn phải nắm vững các kiến thức lập trình.
Cơ hội việc làm:
Hầu hết các trường đại học hiện nay chưa có ngành đào tạo riêng về Tester, nên các hầu hết các tester đều xuất thân từ developer, làm trái ngành… cho nên vẫn tồn tại hiện tượng khan hiếm nhân lực, đặc biệt là đội ngũ nhân lực có tay nghề.
Dù nghề có tiềm năng, và dễ dàng hơn so với những công việc khác trong khối CNTT. Nhưng không phải ai cũng có thể trở thành một Tester chuyên nghiệp. Vậy để trở thành 1 Tester, chúng ta cần chuẩn bị những gì? Dưới đây là một vài tips mà mình nghĩ là hữu ích.
Muốn trở thành một tester thì bạn cần những gì?
Về kiến thức cơ bản
Về cơ bản, Tester nên có những kiến thức nền tảng về máy tính, tin học văn phòng. Cách cài đặt phần mềm cũng như khả năng đọc hiểu, phân tích các yêu cầu cùng phân tích phần mềm thì có thể dễ dàng hơn trong kiểm thử cũng như phát hiện các lỗi sai nếu có.
Ngoài ra, những kiến thức về SQL, HTML hay CSS cũng nên được bạn cân nhắc tìm hiểu. Không cần quá chuyên sâu như lập trình viên, nhưng ít nhất cũng có thể hiểu một phần nội dung mà mình đang kiểm thử.
Kiến thức chuyên ngành của Tester
Thứ hai đó là có những kiến thức tổng quan về testing có khả năng thiết kế test case hiệu quả.
Quy trình kiểm thử phần mềm cơ bản có bước như sau:
- Test planning and control (lập kế hoạch và kiểm soát phần kiểm thử).
- Test analysis and design (phân tích và thiết kế).
- Test implementation and execution (thực thi và chạy test).
- Evaluating exit criteria and reporting (đánh giá và báo cáo).
- Test closure activities (kết thúc hoạt động kiểm thử).
Còn một lưu ý nữa khi testing đó là khả năng mô tả lỗi. Khi làm việc cùng developer và khách hàng thì bạn nên cẩn thận quá trình này vì nó là bước diễn đạt ý tưởng của chính mình.
Thông thường sẽ có bốn bước cho việc log bug như sau:
- Summary (phần tóm tắt, sơ lược bug, đây giống như phần title (tiêu đề))
- Reproduced Steps (các bước viết bug).
- Expected Result (Kết luận của Tester sau quá trình thử nghiệm và báo cáo).
- Actual result (miêu tả thực trạng của bug).
Manual Tester và Automation Tester
Phần cuối mình sẽ cung cấp tổng quan một số kiến thức bổ trợ cho hai hướng testing cụ thể Manual Tester và Automation Tester như sau:
Kiểm tra thủ công:
Về cơ bản công việc của manual test sẽ là test các app/web dựa trên test cases hoặc test scenarios đã có. Từ đó kiểm thử và phát hiện các bug (nếu có)
Kiểm tra tự động hóa:
Cũng có mục đích để kiểm thử. Nhưng thay vì chạy các test cases bằng tay, thì automation test giúp chạy các test cases bằng các test scripts được tạo sẵn, giúp rút ngắn thời gian kiểm thử phần mềm. Đặc biệt trong kiểm thử hồi quy.
Kĩ năng mềm cần thiết
Về kỹ năng:
Có hai kỹ năng mà theo mình là quan trọng nhất đó là kỹ năng làm việc nhóm và giao tiếp. Kỹ năng làm việc nhóm sẽ giúp bạn dễ dàng kết nối với các thành viên khác trong nhóm dự án. Đặc biệt là các developer.
Công việc của một nhà kiểm thử có thể hiểu là cầu nối giữa nhà phát triển phần mềm và người sử dụng phần mềm.
Kỹ năng thứ hai thì đặc biệt hơn:. Kỹ năng giao tiếp sẽ giúp bạn có được những cuộc thảo luận tốt hơn để nâng cao giao tiếp trong quá trình sản xuất phần mềm.
Về phẩm chất:
Đó là sự đam mê và tìm tòi, đồng thời là sự kiên trì. Vì Tester nghĩ thì có thể là 1 nghề dễ mà. Nhưng nếu không có sự đam mê và kiên trì. Bạn sẽ rất chán với việc lặp đi lặp lại những tính năng đã quen thuộc trong nhiều lần kiểm thử khác nhau.
Đồng thời, sự đam mê đưa đến cho bạn những niềm vui trong công việc. Mỗi ngày đi làm là một ngày vui, mà không bị chán nản, gây ra ứ trệ trong công việc.
Một Tester chuyên nghiệp thì cần rất nhiều yếu tố. Năng lực làm việc và phẩm chất sẽ tạo nên thương hiệu riêng cho mỗi tester.
Kết luận:
Nói chung thì Tester cho nhiệm vụ hỗ trợ cho nhóm phát triển phần mềm bàn giao sản phầm đến cho người dùng cuối một cách hoàn thiện nhất.
Sau bài viết này. Hy vọng mọi người có thể hiểu được sơ qua công việc và nhiệm vụ của 1 Tester.
Có thể hiểu hơn, biết rõ mình cần gì và không ngừng hoàn thiện bản thân cũng như các trình độ trong một cuộc sống số này. Trang Nhung Tech hy vọng bài chia sẻ sẽ có ích với mọi người. Cảm ơn vì đã đọc đến đây. Nếu bạn có thêm hướng thú, có thể đọc thêm các bài chia sẻ về ngành nghề này của mình.