我正在为一些计时器验证编写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.");
答案 0 :(得分:0)
我最终必须在应用程序中放入一个隐藏的UITxtField
,并将计时器计数器设置为该文本字段中的文本,然后从UI脚本中获取它。如果有人有更好的方法,请告知。