0
我有一个简单的单元测试,需要验证我的方法是否调用IModel.BasicPublish
方法。所以我写了一个简单的单元测试:模拟rabbitMQ模型验证错误
[TestMethod]
public void RequestAdded()
{
const string url = "http://localhost";
var urlBytes = Encoding.UTF8.GetBytes(url);
_proxyService.AddRequest(url);
_moqModel.Verify(x => x.BasicPublish(It.IsAny<string>(), It.IsAny<string>(), It.IsAny<IBasicProperties>(), urlBytes), Times.Once);
}
然而,当我跑我得到一个错误: invalid verify on a non-virtual member
。
我认为这只能发生在具体的类上,而不是在接口上。
private Mock<IModel> _moqModel;
有什么想法?
你尝试... _moqModel.As().Verify(X => x.BasicPublish(It.IsAny (),It.IsAny (),It.IsAny (),urlBytes ),Times.Once); –
请检查BasicPublish是接口成员还是扩展方法。将BasicPublish作为扩展方法而不是实际成员可能导致此异常 –
提供可用于重现问题的[mcve]。本例中没有足够的上下文,因为目前显示的内容不应该导致该错误。 – Nkosi