Kiểm tra đơn vị và thử nghiệm chức năng có hai kết quả khác nhau.
Kiểm tra đơn vị xác minh rằng một đoạn mã nhỏ hoạt động như mong đợi. Nó thường được thực hiện bởi các nhà phát triển để đảm bảo rằng các mã hoạt động chính xác. Chúng thường được tự động hóa bởi một khung kiểm thử.
Kiểm tra chức năng xác minh rằng tính năng hoạt động như mong đợi bằng cách đi qua một lộ trình nhất định thông qua chương trình. Chúng thường được thực hiện bởi một người trên phần mềm đảm bảo rằng chương trình sẽ làm việc theo cách mà nó được cho là dành cho người dùng. Nó, như vậy, là cấp cao hơn, và do đó kiểm tra nhiều đơn vị cùng một lúc.
Tôi nghĩ cả hai đều quan trọng. Tuy nhiên, nếu bạn có các tài nguyên hạn chế và phải chọn/chọn kỹ thuật, và tôi nghĩ nó phụ thuộc vào các sản phẩm bạn tạo ra, nhưng đối với những gì tôi làm (các sản phẩm điều khiển ô tô được con người sử dụng thông qua một số nút). Nó kiểm tra và đảm bảo rằng khi người dùng nhận được sản phẩm, nó sẽ thực hiện những gì nó được yêu cầu. Điều này không có nghĩa là chúng ta nên chọn không tham gia thử nghiệm đơn vị, nhưng nếu push-to-to-shove, chức năng là quan trọng nhất để đảm bảo trải nghiệm người dùng tuyệt vời và đưa sản phẩm ra khỏi cửa.
Nếu bạn sản xuất, nói, một công cụ cơ sở dữ liệu (hoặc một số sản phẩm khác không nhất thiết phải đối mặt với người dùng), kiểm tra đơn vị có thể là những gì bạn thực sự phải làm.
Nguồn
2010-02-09 15:49:13
Kiểm tra chức năng == thử nghiệm tích hợp? –
Mọi người đều có một câu trả lời rất tốt cho câu hỏi của tôi và mang lại sự rõ ràng thích hợp cho những lời giải thích mang lại. Cảm ơn tất cả các bạn! Tôi đã chọn câu trả lời của @ TrueWill khi anh ấy cung cấp tài liệu tham khảo, ngoài những gì bạn nói. Xin vui lòng biết rằng tôi tất cả upvoted câu trả lời của bạn và đọc lại và đọc lại câu trả lời của bạn theo chăm sóc để hiểu đầy đủ điểm của bạn. Cảm ơn! –
@JoshKodroff, không hoàn toàn (mặc dù bạn sẽ tìm thấy các ý kiến và định nghĩa khác nhau). Kiểm tra chức năng, như tôi đã hiểu, kiểm tra hành vi mong đợi đối với một ca sử dụng, không quan tâm nhiều đến những gì đang diễn ra đằng sau hậu trường. Nó kiểm tra các đơn vị mã làm việc cùng nhau mà đã được kiểm tra đơn vị. Xét nghiệm tích hợp, mặt khác, kiểm tra rằng mọi thứ hoạt động tốt từ đầu đến cuối với đầu vào và đầu ra thực tế. Tôi tin rằng thử nghiệm tích hợp sẽ làm ít hơn rất nhiều mocking của phụ thuộc bên ngoài và các nguồn dữ liệu và thực sự sẽ làm công việc đó sẽ xảy ra trong ứng dụng thực tế. – hotshot309