为什么我不能将泛型类添加到silverlight单元测试项目中?

时间:2011-03-22 13:51:52

标签: unit-testing windows-phone-7 generics

我这里没什么问题。

我有两个Windows Phone 7项目。 一个是常规客户端应用程序,第二个是测试项目。

测试项目可以正常执行。但是当我添加泛型类时:

public class Class1<T>
{

}

然后测试执行以

结束
Information: Tag expression "All" is in use.
TestInfrastructure: All
TestExecution: Unit Testing
A first chance exception of type 'System.NotSupportedException' occurred in mscorlib.dll
TestExecution: TestGroupLifestyleClient.Test starting

未执行任何测试。在模拟器(或设备)上只出现“测试程序集”(没有测试名称,没有任何内容)。 当我从课程中删除<T>部分时,它再次正常工作。

1 个答案:

答案 0 :(得分:0)

我在模拟/存根我的单元测试所依赖的泛型类的功能时遇到了同样的问题。如果泛型类不是测试类( 带注释的[TestClass] ),那么解决方法是在另一个类中创建此泛型类在Visual Studio解决方案中进行项目,然后使用单元测试使项目引用此新项目。然后,通用类将可供您的测试访问并可运行。

我的解决方案结构如下所示

= Solution 'MobileApp'    
    - MobileAppProject
    - TestProject
    - TestSupportProject

干杯, 麦金太尔。