Xin chào Tôi là người mới đến thử nghiệm Moq và có thời gian khó khăn để thực hiện một xác nhận đơn giản. Tôi đang sử dụng một giao diệnPhương thức void kiểm tra Moq
public interface IAdd
{
void add(int a, int b);
}
Moq cho giao diện IAdd
là:
Mock<IAdd> mockadd = new Mock<IAdd>();
mockadd.Setup(x => x.add(It.IsAny<int>(), It.IsAny<int>()).callback((int a, int b) => { a+b;});
IAdd testing = mockadd.Object;
Kể từ khi phương pháp add
là vô hiệu, nó không trả lại bất kỳ giá trị cho Khẳng định với. Làm thế nào tôi có thể khẳng định thiết lập này?
Bạn đang cố gắng kiểm tra điều gì? – GolfWolf
Tôi đang thử kiểm tra phương thức bổ sung đó nhưng không có bất kỳ kiểu trả về nào. Nếu nó có int là kiểu trả về, tôi sẽ kiểm tra Assert.AreEqual (mockadd.add (2,2), 4); Nhưng không có kiểu trả về thì làm cách nào để kiểm tra phương thức thêm. –
** 1. ** Không có ý nghĩa gì khi kiểm tra giao diện (hoặc triển khai mô hình). ** 2. ** Nếu bạn có một lớp tính toán một cái gì đó, bạn có thể muốn làm cho kết quả có sẵn bằng cách nào đó (hoặc thông qua giá trị trả lại hoặc một số tài sản trên đối tượng đó) – GolfWolf