我從標準Sitecore.Kernel
和Sitecore.Nexus
開始。 Sitecore在這裏給出了非常具有描述性的錯誤信息,所以我也添加了DependencyInjection
。它帶來了很多的依賴關係,它們不會在配置文件中顯示。正如你所看到的,我使用*.NoReferences
版本的Sitecore包來控制依賴關係。什麼是Sitecore FakeDB測試的最小Nugets足跡?
<packages>
<package id="Microsoft.Extensions.DependencyInjection" version="1.0.0" targetFramework="net452" />
<package id="Sitecore.FakeDb" version="1.2.2" targetFramework="net452" />
<package id="Sitecore.Kernel.NoReferences" version="8.2.160729" targetFramework="net452" developmentDependency="true" />
<package id="Sitecore.Nexus.NoReferences" version="8.2.160729" targetFramework="net452" developmentDependency="true" />
</packages>
之後我卡住了。我得到了一個錯誤,沒有提供對什麼是錯過了很多線索:
System.NullReferenceException : Object reference not set to an instance of an object.
at Sitecore.Configuration.DefaultFactory.CreateType(XmlNode configNode, String[] parameters, Boolean assert)
at Sitecore.Configuration.DefaultFactory.CreateFromTypeName(XmlNode configNode, String[] parameters, Boolean assert)
at Sitecore.Configuration.DefaultFactory.CreateObject(XmlNode configNode, String[] parameters, Boolean assert, IFactoryHelper helper)
at Sitecore.Configuration.DefaultFactory.CreateObject(XmlNode configNode, String[] parameters, Boolean assert)
at Sitecore.Configuration.DefaultFactory.CreateObject(String configPath, String[] parameters, Boolean assert)
at Sitecore.Configuration.DefaultFactory.CreateObject(String configPath, Boolean assert)
at Sitecore.Configuration.DefaultFactory.GetDatabase(String name, Boolean assert)
at Sitecore.Configuration.DefaultFactory.GetDatabase(String name)
at Sitecore.Configuration.Factory.GetDatabase(String name)
at Sitecore.Data.Database.GetDatabase(String databaseName)
at Sitecore.FakeDb.Db..ctor(String databaseName)
at Sitecore.FakeDb.Db..ctor()
at SitecoreTests.Class1.HowToCreateSimpleItem() in C:\prog\temp\SitecoreTests\SitecoreTests\Class1.cs:line 17
那麼,什麼是缺少進行簡單的假DB測試工作?