1

我正在尝试使用领域作为我在我的应用程序中使用的数据库存储来执行测试用例。在 iOS 设备上保存和执行操作按预期工作。但是我试图在模拟器中运行单元测试用例,测试用例失败并出现以下错误,

frameworkname.realm::find failed with error:Unable to open a realm at path '/Users/username/Library/Developer/CoreSimulator/Devices/D4700477-****-****-****-065C******7F2/data/Documents/frameworkname/frameworkname.realm.management': make_dir() failed: No such file or directory.

我尝试将设备目录的读写权限设置为每个人,但仍然会引发相同的错误。

4

1 回答 1

0

make_dir() failed错误消息中的 表示您试图在不可写目录中打开 Realm 文件。

将文件复制到可写 url 可能会解决如下问题:

let paths = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)
let documentsDirectory = paths[0]
let realmURL = documentsDirectory.appendingPathComponent("data.realm")
try! FileManager.default.copyItem(at: Realm.Configuration.defaultConfiguration.fileURL, to: realmURL)

config.fileURL = realmURL
Realm.Configuration.defaultConfiguration = config

let realm = try! Realm()]
于 2017-01-19T08:01:01.180 回答