У меня есть набор модульных тестов, где каждый тест проходит успешно, когда он выполняется индивидуально.
Однако, если я выполняю весь пакет, один тест зависает, когда он должен инициировать синглтон.Он зависает только в том случае, если он выполняется после определенного другого модульного теста - если я изменяю порядок, весь тестовый костюм успешно выполняется.
Если я приостанавливаю выполнение зависшего модульного теста, трассировка стека выглядит следующим образом:
Выполнение зависает в операторе static let shared = StoreManager()
:
class StoreManager: NSObject, CalledByDataStoreInStoreManager {
static let shared = StoreManager() // Instantiate the singleton
// …
}
Другой модульный тест, который он выполнял ранее и который приводит к зависанию тестане использует StoreManager
синглтон.
Мой вопрос:
В чем может быть причина того, что 1-й тест допускает сбой инициализации синглтона во 2-м тесте, хотя этот синглтон не используется в 1-м тесте