Понять и сократить время выполнения тестов с помощью пакета comnulancencyextras в SwiftIOS

Программируем под IOS
Ответить
Anonymous
 Понять и сократить время выполнения тестов с помощью пакета comnulancencyextras в Swift

Сообщение Anonymous »

В моем приложении для модульного тестирования нашей команды тяжело полагается на инструмент для выполнения асинхронного теста - complourencyExtras - withdmainserialexecutor
Этот инструмент добавляет возможности для запуска тестового кода в основной потоке, а также мы могли бы добавить await askait.yield () , чтобы ждать, чтобы это было выполнено, чтобы выполнить, что он выполняет. Выразился, что я хочу сократить время выполнения.override func invokeTest() {
withMainSerialExecutor {
super.invokeTest()
}
}

В начале каждого теста и удалить withmainserialexecutor везде.
работает, и теперь мои асинхронные тесты работают быстрее. То, что я сделал, в основном заставляю каждый тест выполнять в основном потоке, но вручную добавлено вручную withmainserialexecutor Block сделал то же самое. Может быть, у кого -то есть другое решение сократить время выполнения теста асинхронного теста?func testHasLoaded() async {
/// Arrange
sut = makeVM()
var hasLoaded = String()
sut.dataHasFinishedLoading = {
hasLoaded = "hasLoaded"
}

/// Assert
await Task.megaYield()

XCTAssertEqual(hasLoaded, "hasLoaded")
}
< /code>
Original (0,11 секунды): < /p>
func testHasLoaded() async {
withMainSerialExecutor {
/// Arrange
sut = makeVM()
var hasLoaded = String()
sut.dataHasFinishedLoading = {
hasLoaded = "hasLoaded"
}

/// Assert
await Task.megaYield()

XCTAssertEqual(hasLoaded, "hasLoaded")
}
}


Подробнее здесь: https://stackoverflow.com/questions/793 ... ge-in-swif
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»