XCTest:无法删除框架目标的用户默认数据

Posted

技术标签:

【中文标题】XCTest:无法删除框架目标的用户默认数据【英文标题】:XCTest : Not able to delete user default data of framework target 【发布时间】:2016-09-09 15:30:24 【问题描述】:

目标是 ios8 动态框架(UserDataFramework),我在 UserData 类上保存了一个数据。现在删除保存的数据以检查为 App-Delete-Scenario。但无法从testTarget(UserDataFrameworkTest)删除数据到框架数据(UserDataFramework)。

import XCTest
@testable import UserDataFramework
func testAppDeleteFunctionality() 
     UserData.saveData()
     let kCheckFirstRun = "com.key.checkFirstRun"

     // When app deleted, cleared the user default
     let userDefault = NSUserDefaults.standardUserDefaults()
     userDefault.removeObjectForKey(kCheckFirstRun)
     userDefault.synchronize()
     let checkData = userDefault.valueForKey(kCheckFirstRun)
     XCTAssertNil(checkData)

【问题讨论】:

【参考方案1】:

这个问题是由于将模拟器从 iOS 9 切换到 iOS 10 造成的。我从 Apple 方面发现了这个错误。只需重启系统,userdefault 也可以删除和存储值。

【讨论】:

以上是关于XCTest:无法删除框架目标的用户默认数据的主要内容,如果未能解决你的问题,请参考以下文章

如何从 XCTest 中的 UI 目标调用主目标中的方法?

win10误删用户无法登录怎么办?

无法为“XCTest”加载底层模块

无法删除的文件夹怎么办?如何删除删不掉的文件夹

XCTest 失败并出现异常“非 UI 客户端无法自动暂停”

火狐的用户配置文件被删如何恢复