0Pricing
Swift Academy · Урок

Основы XCTest (цели, фикстуры)

Настройте цели XCTest в пакетах Swift или проектах Xcode, пишите тестовые случаи и управляйте фикстурами с помощью setUp / tearDown .

«Основы XCTest (цели, фикстуры)» — бесплатный урок Swift Academy на CoddyKit. Это урок 1 из 2. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Swift Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Swift Academy содержит 2 уроков всего.

Введение в XCTest

В Swift для модульного тестирования используется XCTest. Создайте цель тестирования, унаследуйте класс от XCTestCase и напишите методы, начинающиеся с test.

Простой метод тестирования

Тестовый вариант является подклассом XCTestCase. Каждый метод тестирования должен начинаться с test и использовать утверждения.

import XCTest

final class MathTests: XCTestCase {
    func testAdd() {
        XCTAssertEqual(2 + 2, 4)
    }
}

Утверждения

Распространённые утверждения:

  • XCTAssertTrue, XCTAssertFalse;
  • XCTAssertEqual, XCTAssertNotEqual;
  • XCTAssertNil, XCTAssertNotNil.

Пример тестовых данных

Используйте setUp()/tearDown(), чтобы подготавливать и очищать состояние до и после каждого теста.

final class FixtureTests: XCTestCase {
    var numbers: [Int]!
    override func setUp() {
        super.setUp()
        numbers = [1,2,3]
    }
    override func tearDown() {
        numbers = nil
        super.tearDown()
    }
    func testCount() {
        XCTAssertEqual(numbers.count, 3)
    }
}

Запуск тестов

Запускайте тесты:

  • swift test (SwiftPM);
  • в Xcode: «Продукт» → «Тест» (⌘U);
  • в системе непрерывной интеграции: добавьте xcodebuild test или swift test в конвейеры.

Советы по структуре

Советы:

  • Давайте методам тестирования описательные имена.
  • Группируйте связанные тесты в файлы и классы.
  • Делайте каждый тест независимым.
  • Используйте тестовые данные умеренно: по возможности предпочитайте явную подготовку.

Вопрос о тестовых данных

Быстрая проверка: какие методы подготавливают и очищают состояние вокруг тестов?

Повторение

Повторение: создайте подкласс XCTestCase, напишите методы test*, используйте утверждения и управляйте тестовыми данными с помощью setUp/tearDown.

Часто задаваемые вопросы

Урок «Основы XCTest (цели, фикстуры)» бесплатный?

Да — полный текст урока «Основы XCTest (цели, фикстуры)» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Swift Academy, подпишись на CoddyKit PRO. Курс Swift Academy содержит 2 уроков всего.

Чему я научусь в уроке «Основы XCTest (цели, фикстуры)»?

Настройте цели XCTest в пакетах Swift или проектах Xcode, пишите тестовые случаи и управляйте фикстурами с помощью setUp / tearDown . Ты практикуешь Swift Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Swift Academy?

Предыдущий опыт не требуется. Swift Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 2.

Сколько времени занимает урок «Основы XCTest (цели, фикстуры)»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Swift Academy?

Да. Каждый урок Swift Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Основы XCTest (цели, фикстуры)
  2. Логирование, assert/precondition/fatalError
← Назад к Swift Academy