Чтобы писать unit-тесты в Swift, создай класс, который наследуется от XCTestCase:
class MyFeatureTests: XCTestCase { }
Каждый тест должен быть методом экземпляра, начинающимся с test — именно так XCTest автоматически их обнаруживает и запускает:
func testAdditionReturnsCorrectResult() {
XCTAssertEqual(2 + 2, 4)
}
Используй встроенные утверждения для проверки ожидаемого поведения:
XCTAssertEqual — проверяет, что два значения равныXCTAssertTrue / XCTAssertFalse — проверяет булево условиеXCTAssertNil / XCTAssertNotNil — проверяет отсутствие или наличие значенияXCTAssertThrowsError — проверяет, что ошибка выброшена, как ожидалосьИспользуй setUp() и tearDown() для управления состоянием теста:
setUp() вызывается перед каждым тестом — используй её для инициализации объектов и сброса состоянияtearDown() вызывается после каждого теста — используй её для освобождения ресурсов и очисткиoverride func setUp() {
super.setUp()
sut = MyService()
}
override func tearDown() {
sut = nil
super.tearDown()
}
test_methodName_expectedBehaviorsut (System Under Test) для тестируемого объектаИмена тестовых методов должны начинаться с префикса test, потому что XCTest использует эту соглашение об именовании для автоматического обнаружения и выполнения тестовых методов во время запуска тестов.
Новый — ещё не проверен сообществом
Вы