无法访问 XCTestCase 中的单例对象 Objective C

Not able to access singleton object inside XCTestCase Objective C

我正在编写一个 XCTestCase 用于某些计时器验证。我的计时器 运行 每 30 秒一次,我在单例对象 MySessionObject 中跟踪 运行 计数,其中 MySessionObject 是指向 [MySession sharedSession] 的宏。

问题是,当我执行测试时,我总是在 MySessionObject.timerCount 中得到 0。但是,当我通过应用程序目标 运行 它时,它设置正确。

关于我在此处加载单例时缺少什么的任何线索?我的假设是它应该通过我的测试目标启动应用程序来设置。

NSInteger timerCountsToTest = 2;

// Adding a delay to counter network operation
[NSThread sleepForTimeInterval:(30 * timerCountsToTest) + 2];

XCTAssertEqual(timerCountsToTest, MySessionObject.timerCount, "Timer did not work properly.");

我最终不得不在应用程序中放置一个隐藏的 UITxtField 并将计时器计数器设置为该文本字段中的文本,然后从 UI 脚本中获取它。如果有人有更好的方法,请指教。