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

时间:2016-05-16 06:42:45

标签: ios objective-c unit-testing cocoa-touch xctestcase

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

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

任何线索,因为我在这里缺少加载单身?我的假设是我的测试目标应该启动应用程序。

NSInteger timerCountsToTest = 2;

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

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

1 个答案:

答案 0 :(得分:0)

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