Il semble qu'il y a plusieurs bugs dans Xcode8 qui peuvent être en cause. Toutefois, j'ai trouvé une solution pour le cas où Xcode essaie de trouver le TEST_HOST application au sein de l' Intermediates/CodeCoverage/
le dossier. (J'ai essayé toutes les autres solutions avec les noms de module etc et ça ne fonctionne pas pour moi.)
Le problème semble être que Xcode n'a même pas essayer de construire l'application avant de lancer les tests. Cependant, une fois que Xcode est capable de trouver l'TEST_HOST dans le dossier qu'il va reconstruire lors du lancement de l'tests. C'est ainsi que nous pouvons trouver notre chemin autour de lui.
Deux solutions possibles:
Si vous n'avez pas à avoir à avoir la couverture de code:
Accédez à votre unité de test de la cible de Paramètres de construction et de définir Enable Code Coverage Support
de N et de désactiver la couverture de code dans votre construction du dispositif de test. (Modifier le schéma, sélectionnez Test sur la gauche). Si vous souhaitez exécuter vos tests unitaires et toujours obtenir que TEST_HOST message d'erreur, essayez de construire (CMD+B) ou de l'exécution de votre application. Ensuite, vous pouvez exécuter vos tests sans erreur. Voilá.
Si vous avez besoin de la couverture de code:
Vous pouvez suivre une certaine solution de contournement pour obtenir que l' Intermediates/CodeCoverage/..
le dossier rempli. Une fois que l'application est à l'intérieur de Xcode va reconstruire pour les tests unitaires comme il se doit, mais vous avez besoin pour l'obtenir une fois remplies. C'est comment vous le faites:
- Dans l'application, et le test de l'unité de sélection de cible Pas de "Permettre la Couverture de Code de Support"
- Puis dans l'onglet "Général" de l'unité cible de test ensemble, le test de l'application hôte à "None"
- Décochez la case "Permettre de tester les API Hôte"
- Essayez de lancer les tests unitaires. Xcode va maintenant au moins essayer de construire. Si Xcode donne une erreur de compilation (parfois Xcode se plaint Cocoapods ici, dans mon expérience), essayez de créer encore une fois.
- Re-cochez la case "Permettre de tester les API Hôte" à nouveau dans le Test de l'Unité cible
- Essayez d'exécuter les tests à nouveau comme ci-dessus. Xcode devrait se plaindre.
- Réglez maintenant le test de l'hôte de l'application.
- Maintenant, les tests doivent passer à travers. (Jusqu'à ce que vous exécutez un propre, alors vous allez avoir à refaire ces étapes..)
Je sais, c'est gênant. Mais c'est la seule solution pour le problème jusqu'à présent.