我尝试对此方法进行单元测试,这非常简单,只需将对象添加到数据库中,如果它运行良好,则返回true
Public Shared Function CrearCliente(ByVal cliente As Cliente) As Boolean
Try
db.Cliente.Add(cliente)
db.SaveChanges()
Return True
Catch ex As Exception
Throw New Exception("ocurrio un error guardando al cliente")
End Try
End Function
现在这是我的考试
<TestMethod()>
Public Sub CrearClienteTest()
Dim mock = New Moq.Mock(Of Cliente)
Dim actual As Boolean
mock.Setup(Function(x) x.Nombre).Returns("blah")
'mock.Setup(Function(x) x.Apellido()
actual = Class1.CrearCliente(mock.Object)
Assert.AreEqual(True, actual)
End Sub
很简单我的问题是为什么在Debugged测试时会抛出此错误
Invalid setup on a non-virtual (overridable in VB) member: x => x.Nombre
可能有什么不对?我需要另一种配置吗?
答案 0 :(得分:1)
正如错误所述,Moq要求您模拟的成员为Overridable
。