Bài viết được sự cho phép của tác giả Kiên Nguyễn
Chà, căng nhỉ lập trình viên biết test. Đã dev rồi còn test nữa thì nghe khá là căng. Hiển nhiên là mấy bạn mới ra trường hoặc có 1,2 năm kinh nghiệm chắc chắn sẽ từ chối hiểu. LOL
mà phân trần thì cũng có lý chứ không phải là không có lý.
- Tester tuyển dụng yêu cầu gì?
- Công ty tuyển tester vào làm gì mà đội dev phải test.
- Nhiệm vụ là dev thì cứ dev thôi, test làm gì?
Hiểu, chắc chắn là hiểu cái lý do trình bày này. Nhưng thử phân tích thêm 2,3 cái lý do dưới đây. Nếu nghe xuôi tai thì test cũng còn chưa muộn.
1. Test không hẳn là một công việc nhàm chán
Thực sự thì test là tìm ra lỗi trong sản phẩm. Tiến hành khắc phục, hoặc bịt bug :). Nghĩ thoáng ra một tí thì test làm cho sản phẩm tốt hơn, hoàn hảo hơi.
Bản thân mình tìm thấy bug là một điều may mắn, khách hàng sẽ không bị crash, không gặp bug mà phải cau có mặt mày.
Đôi khi bản thân được gọi là “Software Engineer” – “Kỹ sư phần mềm”. Từ kỹ sư ở đây không khác gì kỹ sư xây dựng, kỹ sư cầu đường. Xây nhà lại để sập, xây cầu để cầu gãy?. Làm gì có chuyện đó đúng không?.
Để cầu không gãy, nhà không sâp thì ta cần ông giám sát công trình. Bên Software thì ta có chị QC, anh QA. Nhưng không cần chị QC, anh QA, bản thân SE cũng có thể test được. Vì vậy phải xác định trước, test là việc nên làm để đảm bảo chất lượng. BUG là niềm vui. Má, nghe nổi da gà.
Đùa chứ mấy anh lập trình viên biết test lại được đánh giá cao. Được tin tưởng giao task khó và bớt thời gian test do trong lúc dev đã test rồi
2. Test giúp nâng skill lập trình
Nhiều ông cứ bảo tôi điêu. Nhưng thử ra ngoài hỏi xem, có ông nào trình cao mà chưa đi fix bug khó không. Fix bug thực sự hữu ích, nâng skill rất nhanh. Nhanh bởi vì sao:
- Fix bug đôi khi không phải chỉ hiểu một đoạn code, hiểu cả hệ thống.
- Fix bug đôi khi liên quan tới cả business
- Fix bug đòi hỏi phải hiểu rõ chức năng hiện tại, vấn đề tương lai
Đấy, fix bug nâng tầm, mà bug thì không phải từ test mà ra sao?. Các ông tìm được bug khi test -> nhớ -> lần sau sẽ chú ý dev kĩ hơn.
3. Không thể cover hết testcase
Một số trường hợp phát sinh bug. Bản thân Software Engineer có thể biết điều đó, nhưng tester thì không. Theo pattern đôi khi không thể cover hết tất cả các key.
Tôi còn gặp mấy ông code xong thách tester tìm bug, vì bản thân mấy ông đó biết là testcase không thể chạm tới bug đó.
Chính vì vậy, ngay lúc này bản thân Dev cần bắt tay vào test, hoặc ít nhất là nói với tester về khả năng có thể xảy ra case đó trong thực tế. Biết hoặc viết ra sẽ dễ hơn dể tìm và diệt bug.
Đấy, lập trình viên biết test hoặc có kinh nghiệm test cũng được được đánh giá cao hơn trong mắt nhà tuyển dụng.
4. Lập trình viên biết test được đánh giá cao
Trên đây là một số lý do tại sao lập trình viên lại nên test thử cho biết. Rõ ràng mà nói, test hay không test thì bug vẫn là thứ ảnh hưởng tới sản phẩm. Một số bug cơ bản tuy không chết ai. Nhưng nếu viết firmware cho thiết bị y tế có thể đi cả mạng người.
Rèn luyện kỹ năng test giúp Software Engineer có thể thực thụ trở thành một người Senior. Hiểu biết sâu sắc về nghề, tường tận quy trình phát triển phầm mềm. Nên anh em cố mà test nha!
5. Tham khảo
Còn có một trường phái viết test trường khi dev để đảm bảo cover hết case nữa cơ
- Viết Unit Test trước khi Code – tại sao không?
- A Software Engineer in Test Must Have The Heart of a Developer
- What Do You Need to Know to Be a Software Test Engineer?
Thank for your attention – Good day to test – Happy coding!
Bài viết gốc được đăng tải tại kieblog.vn
Có thể bạn quan tâm:
- Những thắc mắc về nghề lập trình kinh điển thường gặp của lập trình viên
- Tips lời khuyên giúp nhà tuyển dụng phỏng vấn ứng viên hiệu quả
- Tester là gì? Lợi ích của Tester
Truy cập ngay việc làm IT đãi ngộ tốt trên TopDev