2012-02-09 120 views
1

我正在寫一些測試行使CoreData對象:coreobj核心數據的iOS單元測試

在我的測試案例設置方法,我有以下的初始化:

 
- (void)setUp 
{ 
    [super setUp]; 
    NSManagedObjectModel *mom = [NSManagedObjectModel mergedModelFromBundles:[NSBundle allBundles]]; 
    NSPersistentStoreCoordinator *psc = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:mom]; 
    STAssertTrue([psc addPersistentStoreWithType:NSInMemoryStoreType configuration:nil URL:nil options:nil error:NULL] ? YES : NO, @"Should be able to add in-memory store");  
    m_managedObjectContext = [[NSManagedObjectContext alloc] init]; 
    m_managedObjectContext.persistentStoreCoordinator = psc; 

} 

我的第一次測試運行的樂趣,但我的第二個測試會在日誌文件中生成此錯誤:

 
Can't merge models with two different entities named 'coreobj' 

建議?

回答

0

安裝程序將每個測試用例之間執行。這可能是你在每次測試之間得到多個導致測試污染的上下文實體。