I have the following code that returns Items: public static IList<Item> GetAll(Language language) { var index = $"my_index_{Context.Database.Name.ToLowerInvariant()}"; using (var context = ContentSearchManager.GetIndex(index).CreateSearchContext()) { var results = context.GetQueryable<SearchResultItem>().InLanguage(language); return results.ToList(); } } I want to unit test some code that uses this function. I have set up `FakeDb` to use in the test as below: using (var db = new Db { new DbItem("Home") {{"Title", "Welcome!"}} }) { sitecoreReader.GetAllThings(); //this in turn calls GetAll(Language language) } Now when the code hits the line `using (var context = ContentSearchManager.GetIndex(index).CreateSearchContext())` it throws this error: > Sitecore.ContentSearch.Exceptions.IndexNotFoundException Google is not helping me on this one... Update: using the answer below and the FakeDb documentation I was *nearly* able to unit test my code. I hit a wall with it when I realised my query uses extension methods that cannot be Moq'd! The code needs some serious refactoring to be able to test!