我已经为我的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
答案 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项目存在问题。所以你可能仍然处于高潮和干燥状态。