我对单元测试有点陌生,使用Microsoft.VisualStudio.TestTools.UnitTesting
;
0.GetType()
实际上是System.RuntimeType
,所以我需要写什么样的测试才能通过Assert.IsInstanceOfType(0.GetType(), typeof(int))
?
---跟进,这是我自己的用户错误......Assert.IsInstanceOfType(0, typeof(int))
我对单元测试有点陌生,使用Microsoft.VisualStudio.TestTools.UnitTesting
;
0.GetType()
实际上是System.RuntimeType
,所以我需要写什么样的测试才能通过Assert.IsInstanceOfType(0.GetType(), typeof(int))
?
---跟进,这是我自己的用户错误......Assert.IsInstanceOfType(0, typeof(int))
将调用更改为以下内容
Assert.IsInstanceOfType(0, typeof(int));
第一个参数是被测试的对象,而不是被测试对象的类型。通过传递 0.GetType(),您说的是“RunTimeType”是 System.int 的一个实例,它是错误的。在幕后,他们的电话只是解决
if (typeof(int).IsInstanceOfType(0))
看起来应该是
Assert.IsInstanceOfType(0, typeof(int))
您的表达式当前正在评估 RunTimeType 是否是 RunTimeType 的一个实例,但它不是。