Winrt Testproject使用FakeItEasy

时间:2014-08-12 09:14:34

标签: c# .net windows-runtime mstest fakeiteasy

我已经为我的Windows 8.1类库创建了一个Testproject。 在TestInitialize函数中,类似于假冒服务。

A.Fake<IService>();

但我得到了这个例外:

The type initializer for 'FakeItEasy.Core.FakeScope' threw an exception.
"Could not load file or assembly 'System.Core, Version=5.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e'
or one of its dependencies. The system cannot find the file specified.":
"System.Core, Version=5.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e"
       at FakeItEasy.Core.FakeScope.get_Current()
       at FakeItEasy.RootModule.<RegisterDependencies>b__2(DictionaryContainer c)
       at FakeItEasy.IoC.DictionaryContainer.<>c__DisplayClass1`1.<Register>b__0(DictionaryContainer c)
       at FakeItEasy.IoC.DictionaryContainer.Resolve(Type componentType)
       at FakeItEasy.ServiceLocator.Resolve[T]()
       at FakeItEasy.RootModule.<RegisterDependencies>b__3(DictionaryContainer c)
       at FakeItEasy.IoC.DictionaryContainer.<>c__DisplayClass1`1.<Register>b__0(DictionaryContainer c)
       at FakeItEasy.IoC.DictionaryContainer.Resolve(Type componentType)
       at FakeItEasy.ServiceLocator.Resolve[T]()
       at FakeItEasy.RootModule.<RegisterDependencies>b__18(DictionaryContainer c)
       at FakeItEasy.IoC.DictionaryContainer.<>c__DisplayClass1`1.<Register>b__0(DictionaryContainer c)
       at FakeItEasy.IoC.DictionaryContainer.Resolve(Type componentType)
       at FakeItEasy.ServiceLocator.Resolve[T]()
       at FakeItEasy.RootModule.<RegisterDependencies>b__17(DictionaryContainer c)
       at FakeItEasy.IoC.DictionaryContainer.<>c__DisplayClass1`1.<Register>b__0(DictionaryContainer c)
       at FakeItEasy.IoC.DictionaryContainer.Resolve(Type componentType)
       at FakeItEasy.ServiceLocator.Resolve[T]()
       at FakeItEasy.A.get_FakeCreator()
       at FakeItEasy.A.Fake[T]()

当我尝试相同但使用NUnit代替MS-Test时,工作正常。

我需要更改FakeItEasy正在使用MS-Test?

我使用的是FakeItEasy 1.23.0.0

1 个答案:

答案 0 :(得分:1)

我没有使用Win8或使用Silverlight,因此在黑暗中这将是一个镜头,但它可能会指向正确的方向。

使用我们为Silverlight构建的相同DLL提供FakeItEasy win8支持。

我发现有些人在使用Silverlight的测试以及MSTest和System.Core 5.0.5.0时遇到了问题。为此,或许查看Why System.Core fails to load when adding Coded UI support for Silverlight 5 application?,特别是@Hans Passant在Coded UI testing support for Silverlight博客文章中发表的评论可能有所帮助。

或者它可能没有。当然,Windows 8 Store support is experimental,有报道称8.1项目存在问题。所以你可能仍然处于高潮和干燥状态。