Como executar o código de configuração único antes de executar qualquer XCTest
Eu tenho o seguinte problema. Quero executar um pedaço de código antes que todas as classes de teste sejam executadas. Por exemplo: não quero que meu jogo use o singleton SoundEngine durante a execução, mas o SilentSoundEngine. Gostaria de ativar o SilentSoundEngine uma vez, não em todos os testes. Todos os meus testes são assim:
class TestBasketExcercise : XCTestCase {
override func setUp() {
SilentSoundEngine.activate () // SoundEngine is a singleton
}
// The tests
}
-Edit- A maioria das respostas é direcionada ao fornecimento de superclasse personalizada para o TestCase. Estou procurando uma maneira mais geral e mais limpa de fornecer o ambiente que todos os testes precisam executar. Não existe uma função "principal" / recurso semelhante ao Appdelegate em algum lugar para testes?