У меня есть следующая проблема. Я хочу выполнить часть кода, прежде чем все тестовые классы будут выполнены. Например: я не хочу, чтобы моя игра использовала сингл SoundEngine во время выполнения, но SilentSoundEngine. Я хотел бы активировать SilentSoundEngine один раз не во всех тестах. Все мои тесты выглядят так:
class TestBasketExcercise : XCTestCase {
override func setUp() {
SilentSoundEngine.activate () // SoundEngine is a singleton
}
// The tests
}
-Edit- Большинство ответов направлено на предоставление пользовательского суперкласса для TestCase. Я ищу более общий и более чистый способ обеспечения среды, которую все тесты должны выполнять. Разве нет "основной" функции /Appdelegate как функция где-то для тестов?