iOS Тестирование производительности асинхронного метода

Я пытаюсь написать тест производительности для метода запроса API. Когда я запускаю его без measureBlock, он работает нормально, но когда я использую его в качестве теста производительности, я получаю сообщение об ошибке:

*** Ошибка подтверждения в -[Performance waitForExpectationsWithTimeout:handler:], /SourceCache/XCTest_Sim/XCTest-7701/XCTestFramework/Classes/XCTestCase+AsynchronousTesting.m:236 /Users/iphonetest03/Desktop/shootr-ios/Tests/Performance.m:42: ошибка: -[Performance testPerformanceExample]: сбой: обнаружен "NSInternalInconsistencyException", "нарушение API - вызов сделан для ожидания без каких-либо ожиданий".

Любые предложения приветствуются. Благодарю. Вот мой код:

    @interface Performance : XCTestCase
       @property (nonatomic,strong)    XCTestExpectation *expectation;
       @property (nonatomic)           BOOL              serverResponse;
    @end

    @implementation Performance

       - (void)setUp {
          [super setUp];
          self.expectation = [self expectationWithDescription:@"Server response"];
       }

       - (void)tearDown {
          [super tearDown];
       }

       - (void)testPerformanceExample {
          [self measureBlock:^{
             [ShotQueueManager singleton].sendingrequestor = self;
             [[ShotQueueManager singleton] createShotQueueWithComment:@"iOS Shot creation performance test." andPhotoBinary:nil shotParent:nil userNameParent:nil andDelegate:self];
             [self waitForExpectationsWithTimeout:25.0 handler:^(NSError *error) {
                if (error) {
                   NSLog(@"Timeout Error: %@", error);
                }else{
                   XCTAssert(self.serverResponse);
                }
             }];
          }];
       }


       - (void)createShotResponseWithStatus:(BOOL)status andError:(NSError *)error {
          if (status && !error){
            self.serverResponse = YES;
            [self.expectation fulfill];
          }
       }

0 ответов

Другие вопросы по тегам