Meu aplicativo é composto de muitos projetos (estruturas), um para cada recurso principal e um quadro comum com todos os tipos de coisas que eu preciso acessar em vários dos meus recursos.
Estou usando o Swift Package Manager do Xcode 11 para adicionar dependências.
A estrutura comum contém uma dependência do RxSwift, que eu uso durante todo o projeto.
Estou enfrentando problemas quando tento usar o RxTest em qualquer uma das minhas estruturas de recursos.
Se eu adicionar o RxTest via SPM diretamente ao destino do teste e executar os testes, recebo
falha ao desmontar a superclasse de 'nome da classe' do nome mutilado 'outro nome da classe'
e muitos
A classe 'nome da classe' é implementada tanto no 'caminho da estrutura comum' quanto no 'caminho de destino do teste'
onde todas essas classes estão relacionadas à Rx. O erro 'falha ao desmembrar' falha no teste e só ocorre quando tento inicializar uma classe RxTest.
Se eu adicionar o RxTest à estrutura comum, os testes executam bem, mas quando executo o aplicativo, recebo
dyld: Biblioteca não carregada: @ rpath / XCTest.framework / XCTest
O que faz sentido, porque estou adicionando uma estrutura de teste a uma estrutura que não é de teste e não é algo bom de se fazer.
Então, basicamente, não consegui obter uma configuração em que os testes e o aplicativo funcionem bem. O aplicativo é executado ou os testes são executados.
Como posso fazer isso funcionar? Existe uma maneira de incluir o RxTest na estrutura comum somente quando eu o construo em um destino de teste? Ou o RxTest deve ser incluído apenas nos destinos de teste e estou faltando alguma configuração?