Hiện nay, công nghệ thông tin là ngành đang rất hot và thiếu nguồn nhân lực trầm trọng, không ngoại trừ công việc Tester (kiểm thử viên). Vậy Tester là gì? Nên học ngành gì và cần trang bị những kỹ năng gì để trở thành một Tester ưu tú? Hãy cùng Việc Làm 24h tìm hiểu qua bài viết sau đây nhé.
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?
Học ngành gì để làm Tester?
Những kiến thức chung cần có
Hiểu biết về các kiến thức công nghệ là yêu cầu bắt buộc cần có ở một Tester. Việc biết và sử dụng thành thạo những nội dung sau đây sẽ giúp việc testing trở nên dễ dàng và đạt hiệu suất cao:
- Cài đặt và sử dụng phần mềm, kết nối Internet, kiến thức tin học văn phòng (Microsoft Offices).
- Nắm được các định nghĩa, thuật ngữ, đặc điểm của từng ngôn ngữ và công nghệ lập trình, quy trình hoạt động của tính năng.
- Hiểu được cơ chế lưu trữ của cơ sở dữ liệu Database/SQL.
- Hiểu biết cơ bản về HTML, CSS.
- Biết cách sử dụng các công cụ bổ trợ cho việc kiểm thử như: Google Pagespeed khi muốn test tốc độ tải trang theo chuẩn Google, SEOQuake dùng để đo lường mức độ chuẩn SEO onpage…
- Đối với Manual Tester, quan trọng nhất là khả năng lập kịch bản kiểm thử chi tiết (testcase). Bạn cần được học và luyện tập cách lập kế hoạch kiểm tra một cách bài bản để không bị bỏ sót.
- Đối với Automation Tester, cần sử dụng được các công cụ test tự động. Một số Framework phổ biến như: Ranorex, Selenium, Appium, TestComplete, Jmeter, SoapUI.
Các ngành đào tạo Tester
Hiện rất hiếm trường đại học nào đưa “Kiểm thử phần mềm/website” vào chương trình đào tạo chính quy. Thực tế cũng cho thấy rằng, hầu hết background của Tester xuất thân từ lập trình viên (Developer). Chính vì thế, có 03 con đường chính để học làm Tester:
- Bạn đã học các ngành liên quan tới công nghệ thông tin (CNTT), như là: lập trình viên, hệ thống thông tin, an toàn thông tin, điện tử – viễn thông, lập trình nhúng… sau đó tự tìm hiểu và học thêm để chuyển hướng sang Testing. Với nền tảng CNTT đã có sẵn, việc tự trau dồi thêm kiến thức, kỹ năng mềm kiểm thử cũng không phải là việc quá phức tạp nếu bạn đủ siêng năng và kiên trì.
- Hiện nay có rất nhiều trung tâm đào tạo khoá ngắn hạn trong khoảng 3 – 6 tháng với học phí từ 3.000.000 VNĐ – 7.000.000 VNĐ tuỳ thuộc vào lộ trình. Các trung tâm này vừa giảng dạy vừa tạo điều kiện cho học viên ứng dụng kiến thức vào các dự án thực tế. Đồng thời, thông qua các chương trình hợp tác, trung tâm chia sẻ cơ hội thực tập hoặc các vị trí đang tuyển dụng từ doanh nghiệp với ứng viên.
- Ngoài ra, còn một cách học khác là học nhóm hoặc học kèm bởi các Tester trình độ cao, dày dặn kinh nghiệm cũng khá hiệu quả. Đây là cách dạy linh động về thời gian, bên cạnh đó, giúp học viên dễ tiếp thu hơn do người đào tạo chỉ bảo và theo dõi sát sao.
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í.
Xem thêm: Bí quyết rèn luyện kỹ năng thuyết trình trước đám đông thu hút, thuyết phục
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. Đừng quên truy cập vào website Nghề Nghiệp Việc Làm 24h để tìm kiếm nhiều cơ hội việc làm Tester với mức lương hấp dẫn.
Xem thêm: QA QC là gì? Bật mí từ A đến Z các điều bạn cần biết trước khi làm QA và QC