运行测试代码时出现以下错误。如何解决该问题?我正在使用 Visual Studio 2010 Premium 的内置 MStest。
测试方法 TestProgram.myProgramTest.GetTypeListTest 抛出异常: System.InvalidCastException:无法将“System.Collections.Generic.List`1[MyProgram.MyClass]”类型的对象转换为“System.Collections.Generic.List`1[MyProgram.MyClass_Accessor]”。
待测方法:
public class MyProjectClass {
private List<MyClass> GetTypeList()
{ ....
}
}
class MyClass {....} // A POCO class
测试代码(大部分代码由Visual Studio自动生成):
[TestMethod()]
[DeploymentItem("myProgram.exe")]
public void GetTypeListTest()
{
MyProjFile_Accessor target = new MyProjFile_Accessor ();
var actual = target.GetTypeList();
Assert.IsTrue(actual.Count > 2);
}
我真的不知道为什么这个问题两次被否决,所有其他代码要么与问题无关,要么由 Visual Studio 自动生成。
这是非常直接的类定义。并且测试夹具是使用 VS 2010 向导创建的。刚刚返回的方法MyClass
可以通过测试。问题是返回类型为List<MyClass>
.