Nếu một dự án có một thử nghiệm được thực hiện như là một phần của quy trình xây dựng trên máy xây dựng, nếu một bộ kiểm tra thất bại, toàn bộ quá trình xây dựng có bị lỗi không?
Những điều bạn nên cân nhắc khi trả lời câu hỏi đó là gì? Có vấn đề gì mà các thử nghiệm không thành công?Các thử nghiệm thất bại có nên khiến việc xây dựng liên tục không thành công?
Thông tin cơ bản đã thúc đẩy câu hỏi này:
Hiện nay tôi đang làm việc trên một dự án mà có NUnit bài kiểm tra được thực hiện như một phần của quá trình xây dựng và được thực hiện trên của chúng tôi cruise control .net build máy.
Dự án được sử dụng để thiết lập sao cho nếu có bất kỳ thử nghiệm nào bị lỗi, bản dựng không thành công. Lý do là nếu các kiểm tra thất bại, điều đó có nghĩa là sản phẩm không hoạt động/không hoàn thành/nó là một thất bại của một dự án, và do đó việc xây dựng sẽ thất bại.
Chúng tôi đã thêm một số thử nghiệm mặc dù chúng không thành công, chúng không quan trọng đối với dự án (xem bên dưới để biết thêm chi tiết). Vì vậy, nếu những thử nghiệm đó thất bại, dự án không phải là một thất bại hoàn toàn, và chúng tôi vẫn muốn nó được xây dựng.
Một trong các kiểm tra vượt qua xác minh rằng các đối số không chính xác dẫn đến ngoại lệ, nhưng kiểm tra không vượt qua là kiểm tra tất cả các đối số được phép làm không dẫn đến ngoại lệ. Vì vậy, lớp loại bỏ tất cả các trường hợp không hợp lệ, nhưng cũng có một số trường hợp hợp lệ. Đây không phải là vấn đề đối với dự án, vì các đối số hợp lệ bị từ chối là các trường hợp rìa, mà trên đó ứng dụng sẽ không dựa vào.
+1: "Trường hợp rìa" không phải là lý do. Sửa mã hoặc sửa thử nghiệm. –
"Sự cố cửa sổ bị hỏng" - một liên kết rất hữu ích – legesh