Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/99.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 单元测试没有看到托管对象模型的新版本_Ios_Unit Testing_Core Data - Fatal编程技术网

Ios 单元测试没有看到托管对象模型的新版本

Ios 单元测试没有看到托管对象模型的新版本,ios,unit-testing,core-data,Ios,Unit Testing,Core Data,我已经创建了托管对象模型的新版本(新xcdatamodel文件),更新了xcdatamodeld,使新版本为“当前”,并向实体(循环)添加了一个属性(HassStartWithFlow)。HassStartWithFlow是布尔型的,不是可选的,默认值为否。我已经更新了Cycle.h @property (nonatomic) BOOL hasStartWithFlow; 还有骑自行车。我有 @dynamic startsWithFlow; 我在单元测试代码中实例化了一个新的持久存储文件(s

我已经创建了托管对象模型的新版本(新xcdatamodel文件),更新了xcdatamodeld,使新版本为“当前”,并向实体(循环)添加了一个属性(HassStartWithFlow)。HassStartWithFlow是布尔型的,不是可选的,默认值为否。我已经更新了Cycle.h

@property (nonatomic) BOOL hasStartWithFlow;
还有骑自行车。我有

@dynamic startsWithFlow;
我在单元测试代码中实例化了一个新的持久存储文件(sqlite),然后尝试设置新值:

    cycle.startsWithFlow = true;
我得到错误
-[Cycle setStartsWithFlow:]:无法识别的选择器被发送到实例0x192ebf0
。如果我中断单元测试执行并检查
[NSEntityDescription entityForName:@“Cycle”inManagedObjectContext:context]
,我会发现它不包括我的新属性


我遗漏了什么?

我不确定这是否真的解释了问题所在,但重新启动Xcode解决了我的问题。

Hm../Xcode/DerivedData//Build/Products/Debug iphonesimulator/AppNameLogicTests.octest/DataModel.momd/VersionInfo.plist仍然有指向旧版本的NSManagedObjectModel\u CurrentVersionName,尽管它说文件在我上次构建时更新过。删除octest包中的DataModel.momd目录只会导致重新创建错误的值。嗯。听起来好像当你更新模型时,你只更新了主要应用目标的设置,而没有更新单元测试目标的设置。我该怎么做呢?有一个xcdatamodeld源文件,已检查两个目标的目标成员资格。我只看到一个地方可以设置currentVersion(在文件检查器的“版本化核心数据模型”下)。