Tin tức mới

[XP] Mã kiểm thử đơn vị đầu tiên

Sở hữu tập thể mã nguồn

Khi tạo kiểm thử ngay đầu tiên, trước khi viết mã, bạn sẽ thấy việc viết mã dễ dàng và nhanh hơn. Tổng thời gian để viết kiểm thử, và mã để vượt qua kiểm thử xấp xỉ thời gian lập trình một cách trực tiếp. Nhưng nếu đã có kiểm thử đơn vị, bạn không cần phải tạo ra chúng sau khi viết mã, điều đó giúp tiết kiệm được nhiều thời gian hơn cho hiện thời và rất nhiều về sau.

Việc tạo kiểm thử đơn vị giúp nhà phát triển thực sự quan tâm tới những gì cần hoàn thành. Các yêu cầu bài toán được làm rõ thông qua kiểm thử. Không có sự hiểu sai một đặc tả bài toán ở mã thực thi.

Ngoài ra, các kiểm thử đơn vị sẽ gửi những phản hồi tức thì khi bạn làm việc. Những phản hồi thường không rõ ràng một khi nhà phát triển đã hoàn thành các chức năng cần thiết. Sự tăng đột biến về phạm vi như sự mở rộng hay điều kiện lỗi cần phải được xem xét. Nếu chúng ta tạo ra các kiểm thử đơn vị đầu tiên, thì khi tất cả các kiểm thử đơn vị chạy không có nghĩa là chúng ta đã hoàn thành.

Ngoài ra, kiểm thử đơn vị còn có lợi cho thiết kế hệ thống. Việc kiểm thử đơn vị các hệ thống phần mềm gặp khó khăn xảy ra rất thường xuyên. Những hệ thống này thường có mã xây dựng trước và mã kiểm thử triển khai sau – thường do một nhóm khác phát triển. Bằng cách tạo ra các kiểm thử đầu tiên, mong muốn kiểm tra mọi thứ có giá trị với khách hành sẽ ảnh hưởng tới thiết kế. Do đó thiết kế của bạn sẽ dễ kiểm thử.

Có nhịp để phát triển phần mềm với kiểm thử đơn vị trước. Bạn tạo ra một kiểm thử để xác định một khía cạnh nhỏ của vấn đề. Sau đó, bạn viết mã đơn giản nhất để vượt qua kiểm thử. Sau đó, bạn viết kiểm thử thứ hai. Và bây giờ, bạn thêm vào mã để hoàn thiện kiểm thử mà bạn vừa tạo ra. Bạn tiếp tục cho tới khi không còn vấn đề nào cần giải quyết nữa. Một ví dụ viết bằng Java: Các vấn đề của máy pha cà phê.

Mã mà bạn viết ra thật đơn giản và ngắn gọn, chỉ thực hiện các chức năng bạn muốn. Nhà phát triển khác có thể xem cách sử dụng mã mới thông qua các kiểm thử. Khi giá trị đầu vào cho kết quả không xác định sẽ bị loại bỏ trong bộ kiểm thử.

Nguồn XP

Người dịch: Darkness Eagle |  Biên tập: Phạm Anh Đới


Hãy tham gia nhóm Học lập trình để thảo luận thêm về các vấn đề cùng quan tâm.

Leave a Reply

Your email address will not be published. Required fields are marked *

TÀI LIỆU DEVWORLD
Cẩm nang phát triển nghề nghiệp cho lập trình viên!