Tester là gì? Điều gì tạo nên một tester giỏi?
Tester là gì? Điều gì tạo nên một tester giỏi?
Tester là gì?
Tester là vị trí công việc chịu trách nhiệm kiểm tra và thử nghiệm các dự án lập trình để đảm bảo sản phẩm vận hành trơn tru, không còn lỗi, có thể bàn giao cho khách hàng hoặc ra mắt thị trường. Trong đó, dự án lập trình có thể là website, phần mềm, ứng dụng di động (mobile app), ứng dụng web (web app) hoặc thậm chí chỉ là một cụm tính năng (module) bổ sung cho hệ thống đang vận hành.
Vai trò của Tester là viết đặc tả các trường hợp cần thử nghiệm, tiến hành các thao tác nghiệp vụ hoặc sử dụng công cụ để tìm ra lỗi (bugs, errors), lỗ hổng logic hoặc bất cứ vấn đề nào liên quan tới trải nghiệm của khách hàng, người dùng cuối. Sau đó báo cáo cho đội ngũ lập trình danh sách các lỗi cần sửa và cải thiện. Tester cần đảm bảo sản phẩm cuối cùng phải đúng, đủ, đạt về mặt giao diện và chức năng so với yêu cầu dự án.
Tuy cùng là vị trí Tester, do đối tượng và cách thức kiểm thử khác nhau, Tester sẽ có nhiều tên gọi như: Software Tester, Website Tester, App Tester, Manual Tester và Automation Tester. Chúng ta hãy cùng tìm hiểu thêm về Manual Tester và Automation Tester – 2 khái niệm Testing được nhiều người sử dụng để phân loại Tester nhất nhé!
Manual Tester là gì?
Manual Tester là người thực hiện việc thử nghiệm sản phẩm lập trình một cách thủ công. Điều này có nghĩa Tester không sử dụng bất cứ công cụ kiểm tra tự động nào mà sẽ kiểm thử bằng tay theo testcase và dựa trên checklist những hạng mục cần làm. Đây là công việc mà những bạn mới bắt đầu công việc Tester sẽ chọn vì không cần biết code vẫn có thể làm được.
Automation Tester là gì?
Ngược lại với Manual Tester, Automation Tester có thể hiểu là người tự viết code và sử dụng các công cụ kiểm thử tự động thay vì thực hiện bằng tay và mắt thường. Phần lớn thời gian của họ dành cho việc lập trình như những coder khác. Người làm automation sẽ không cần thiết phải nắm sâu về các kiến thức Manual Test nhưng thay vào đó phải biết rõ về các automation tools, frameworks cũng như có thể làm việc được trên nhiều ngôn ngữ lập trình khác nhau như Java, C#, AutoIT, Python, C++ v.v, tùy theo yêu cầu dự án.
Automation không hẳn là trình độ nâng cao của manual vì đây là hai nhánh khác nhau, cả hai đều quan trọng cũng như có độ khó nhất định nếu phải học và tìm hiểu sâu. Người làm manual tốt không chắc có thể viết code được và người làm automation cũng chưa chắc sẽ có được tư duy, khả năng quan sát và kiến thức kiểm thử manual. Tuỳ thuộc vào sản phẩm lập trình, tính cấp thiết và mức lương có thể chi trả mà các công ty công nghệ tuyển dụng loại hình test phù hợp với nhu cầu. Đối với người làm công việc này thì sẽ căn cứ vào khả năng của bản thân, sở thích cũng như ngành nghề đã được đào tạo. Vậy học ngành gì để làm Tester?
Những tố chất một Tester giỏi cần có
Ngoài những kiến thức cơ bản nêu trên, để trở thành Tester chuyên nghiệp và tiến tới trình độ cao nhất là Testing Leader hoặc BA (Business Analyst), Tester cần chủ động trang bị cho mình các kiến thức công nghệ chuyên sâu và kỹ năng mềm khác.
Khả năng phân tích
Đây là yếu tố vô cùng quan trọng của người làm công việc thử nghiệm. Phân tích không chỉ là khả năng có thể luyện tập mà nó còn là tố chất vốn có. Một Tester giỏi phải là người có khả năng phân tích sắc bén. Cụ thể ở việc bạn đọc và hiểu rất rõ yêu cầu của dự án, bẻ nhỏ danh sách tính năng chi tiết từ một module lớn, lập luận tất cả trường hợp có thể xảy ra khi trải nghiệm tính năng để tạo testcase.
Kỹ năng trình bày và giao tiếp
Nhiều người cho rằng cũng giống như Developer, làm Tester là làm kỹ thuật nên không yêu cầu cao về kỹ năng giao tiếp. Tuy nhiên, thực tế đã chứng minh ngược lại với ý kiến trên.
Tester thường phải làm việc với rất nhiều bên trong một dự án. Trước hết, Tester nhận yêu cầu từ PM, trao đổi thêm để làm rõ những chức năng còn đang thắc mắc; báo cáo kết quả kiểm thử cho đội lập trình; cập nhật tình hình kiểm tra cho khách hàng và người quản lý. Ở mọi khâu, dù giao tiếp với ai và về vấn đề nào thì Tester cũng cần trao đổi một cách súc tích, rành mạch và dễ hiểu. Chưa kể, mâu thuẫn luôn tiềm ẩn giữa Tester và Developer bởi rất ít lập trình viên hứng thú với bug report (báo cáo lỗi) của Tester. Phong cách giao tiếp thẳng thắn nhưng lịch thiệp cũng giúp Tester giữ được hoà khí.
Thêm vào đó, cách trình bày bug report cũng là một nghệ thuật. Tester cần diễn đạt thao tác và hiện tượng lỗi trên Google Sheet hoặc Bugherd ngắn gọn và dễ hiểu để tránh trường hợp Developer chán nản trước khi bắt tay vào sửa lỗi.
Tính kỷ luật
Có thể gọi tính kỷ luật của Tester là trách nhiệm đối với công việc. Một Tester chuyên nghiệp phải là người chăm chỉ, trung thực và đưa mục tiêu mang lại sản phẩm tốt nhất cho người dùng và khách hàng lên hàng đầu. Nhiều Tester cảm thấy rối trí và đầu hàng trước những dự án phức tạp, dẫn đến việc dễ dàng thỏa hiệp và “nhắm mắt cho qua” những lỗi cơ bản hoặc thậm chí là lỗ hổng nghiêm trọng. Đây là tính xấu cần được loại trừ ở mọi level Tester, bạn hãy trung thực với chính mình trước khi nghĩ đến việc đạt được vị trí cao hơn trong sự nghiệp kiểm thử.
Tuy nhiên, bạn cũng không nên quá cứng nhắc khi đo từng pixel và yêu cầu Dev phải điều chỉnh trong khi đối với dự án website cơ bản thì sự chênh lệch về kích thước giao diện lại không gây ảnh hưởng nghiêm trọng. Bạn có thể linh hoạt bỏ qua để tránh mất thời gian và gây cảm giác ức chế cho đội ngũ của mình.
Sự cầu tiến
Sự cầu tiến của Tester nằm ở việc người này luôn chủ động cập nhật xu hướng công nghệ mới, học hỏi thêm kiến thức nâng cao về công việc kiểm thử, trải nghiệm và áp dụng các công cụ mới vào dự án, luôn tìm cách nâng cao hiệu suất công việc. Đồng thời, bạn cũng nên ghi chú lại các trường hợp mới vào “sổ tay kiểm thử” hoặc thêm vào quy trình để rút kinh nghiệm cho các dự án khác.
Tổng kết
Trong thời đại mà chất lượng sẽ quyết định sự tồn vong của sản phẩm hoặc công ty lập trình thì tầm quan trọng của Tester ngày càng được nâng cao và đóng vai trò quan trọng. Hy vọng qua bài này bạn sẽ nắm được Tester là gì và tự bổ sung kiến thức cho bản thân để trở thành một Tester có tâm và có tầm.
Về HeyDevs
HeyDevs là nền tảng tìm việc IT thụ động đầu tiên ở khu vực APAC, giúp bạn xua tan những nỗi lo trong quá trình xin việc. HeyDevs cung cấp trải nghiệm tuyển dụng hoàn toàn mới, giờ đây bạn không cần phải nộp đơn xin việc, các công ty sẽ ứng tuyển vào bạn.
Với lập trình viên, HeyDevs cung cấp các tính năng đặc biệt như nút lệnh “sẵn sàng làm việc", hồ sơ ẩn danh, tạo hồ sơ với CV có sẵn với khả năng kết nối và trò chuyện với các nhà tuyển dụng được tích hợp sẵn trên nền tảng.
Với nhà tuyển dụng, HeyDevs cung cấp các công cụ hợp lý hóa quy trình tuyển dụng, giúp tiết kiệm thời gian và tiền bạc, với quy trình tuyển dụng được tinh giản đến mức tối ưu. HeyDevs cho phép công ty tiếp cận với nhóm ứng viên dồi dào, chất lượng và được xác minh danh tính, trình độ cũng như kinh nghiệm làm việc, giúp nâng cao hiệu quả tuyển dụng của doanh nghiệp.