我正在玩 Xcode 7 beta 中引入的新 UI 测试。在我的一个 UI 测试场景中,我需要添加一些代码,这些代码与单击我Simulator -> Reset Content and Settings
的setup()
测试文件(即XCTestCase
. 可以通过编程方式完成重置吗?或者,我们可以在测试代码中模拟恢复出厂设置对应用程序的影响吗?
问问题
907 次
2 回答
1
不完全以编程方式,但您始终可以编写一个 bash 文件来删除:
${user.home}/Library/Application Support/iPhone Simulator/${simulator.version}
这将清除模拟器上的设置。
我的理解是,由于应用程序是沙盒的,因此您将无法在应用程序中执行此操作。
于 2015-08-29T17:52:41.997 回答
0
通常人们使用 shell 脚本或苹果脚本。但是,绝对没有必要使用硬重置。
你不应该关心其他应用程序中的数据,你应该只关心你应用程序中的数据。您始终可以在测试开始时删除您的应用数据(文件、用户默认值)。那么,为什么要进行硬重置?
更好的解决方案是模拟。如果您的测试假设,例如,某些变量 in
NSUserDefaults
未设置,您不必关心存储在那里的实际值,只需模拟您的实现正在使用的方法(例如objectForKey:
,让它 returnnil
.
于 2015-08-29T22:10:39.537 回答