2015-09-28 3 views

ответ

1

Там нет простого способа сделать это. Наиболее прагматическим решением является закомментировать или переименовать тест:

@implementation MyTestCase 

- (void)testSomething { /* ... */ } 

// Option 1: Comment out the test. 
// - (void)testSomething { /* ... */ } 

// Option 2: Rename the test such that XCTest does not consider 
// it a valid test method. In order to be "valid", it needs to: 
// 
// - Have a return type of `void` 
// - Take no parameters 
// - Begin with "test" 
// 
// Here, we rename the test so that it does not begin with "test". 
- (void)PENDING_testSomething { /* ... */ } 

@end 

Конечно, одна из хороших вещей о RSpec является то, что она выводит предупреждение о какой-то. Вы можете добавить их самостоятельно, используя #warning:

#pragma Pending! 
- (void)PENDING_testSomething { /* ... */ } 

Это отображает предупреждение в Xcode. Имейте в виду, что #warning доступен только в Objective-C, а не в Swift.

основы тестирования как Quick и Specta обеспечивают ожидающие примеры:

pending("tests something") { /* ... */ } 
xit("tests something") { /* ... */ } 
xdescribe("describes something") { /* ... */ } 
xcontext("provides context for something") { /* ... */ } 

Эти рамки испытаний предотвращают «ожидающие» тесты из руководят перекрывая -[XCTestCase testInvocations]. Это большая работа, но если вы хотите реализовать «ожидающие тесты» самостоятельно, вы можете также заняться этим.

+1

Одна из предпосылок переименования в комментарии заключается в том, что компилятор скажет вам, если ожидающий тест не будет создан. –

0

Это не совсем принято, но если ваш ведущий считает в ожидании испытаний неудовлетворительного люкса (я ведущий для моей команды, и я), то простой XCTFail() делает работу:

#pragma mark - Something Tests 

- (void)testSomething_scenario_result { 
    XCTFail(@"Pending Test: %@",NSStringFromSelector(_cmd)); 
} 

Тогда вы могут легко увидеть, какие неудачи являются релевантными, если вам нужно оставить ожидающий тест по какой-либо причине (возможно, ветку личного развития), но весь пакет все еще не работает, пока вы его не завершите.

Для «истинного» ожидания ответа modocache гораздо более полно.

Смежные вопросы