Được rồi vì vậy gần đây tôi đã cố gắng truy cập vào IoC. Tuy nhiên, tôi tiếp tục chạy vào một rào cản - đó là thực tế là tôi thích sử dụng các đối tượng giả.Thực hành tốt nhất cho các bài kiểm tra đơn vị, đối tượng giả, và ioc
Cài đặt nhanh chóng và không gây đau đớn. Tuy nhiên, nếu tôi sử dụng IoC trên tất cả các vị trí trong mã của mình thì nó buộc tôi tạo các cài đặt thử nghiệm (và cấu hình) của các đối tượng của tôi thay vì sử dụng các đối tượng giả (ví dụ: sử dụng moq).
Kết quả cuối cùng là tôi kết thúc với các tệp cấu hình khổng lồ để thử nghiệm.
Ngoài ra còn có nhiều trường hợp thử nghiệm khi tôi yêu cầu các hành vi khác nhau trong các lớp học của mình trên cơ sở thử nghiệm. Với các đối tượng moq, điều này cực kỳ dễ dàng. Làm thế nào bạn sẽ làm điều gì đó tương tự với IoC?
Mọi trợ giúp sẽ được đánh giá cao.
Cảm ơn,
Mike
Bạn có thể cung cấp thêm thông tin về sự cố không? Tôi không hiểu tại sao bạn lại gặp vấn đề. Có thể một mẫu mã? –
Nếu bạn đang sử dụng tiêm, các phụ thuộc trong lớp của bạn thường được tiêm vào hàm tạo hoặc các thuộc tính - vì vậy trong bài kiểm tra của bạn, bạn nên có tất cả các đường nối cần thiết để thay thế những gì được chèn bởi các mocks. Bạn có thể xây dựng trên một trường hợp cụ thể mà bạn đang đấu tranh với? – Mathias
Tại sao bạn sử dụng một thùng chứa IOC để thử nghiệm đơn vị? – mwjackson