2017-03-10 1 views
0

Lors du développement d'une application iOS, je dois exécuter des tests unitaires & sur une base de données préchargée. Donc, j'ai prévu d'inclure le fichier DB préchargé dans l'App uniquement pour la construction de DEBUG car les tests UI/Unit ne fonctionneront qu'avec la version DEBUG. Comment puis-je exclure le fichier DB de la version Release?iOS - Exclure les fichiers de test de la version Release

Actuellement, je peux détecter si l'application hôte est en cours d'exécution pour les tests ou de ne pas utiliser comme suit,

https://stackoverflow.com/a/33466038/1084174,

mais comment peut exclure et d'inclure database.db en utilisant cette technique?

Un petit conseil sera vraiment apprécié.

Répondre

0

Enfin, je résous le problème.

  1. Ouvrez votre fichier de projet. Au bas de l'écran, cliquez sur Ajouter un paramètre de construction -> Ajouter un paramètre défini par l'utilisateur et nommez-le EXCLUDED_SOURCE_FILE_NAMES.

  2. Cliquez sur la flèche à gauche de EXCLUDED_SOURCE_FILE_NAMES pour la développer. Dans la configuration Release de cette variable, ajoutez libTestFlight.a et tous les autres fichiers que vous souhaitez exclure (séparés par des espaces).

0

La méthode standard consiste à créer une nouvelle cible dans Xcode à utiliser pour le débogage. Vous pouvez ensuite utiliser le sélecteur de cible sur les fichiers

File targets

Ici vous pouvez voir que j'ai un fichier source qui est inclus dans mon objectif principal, mais pas dans mon extension de messages. Cela apparaît dans le volet Utilitaires sur le côté droit de l'écran. Vous pouvez obtenir la même chose en incluant un fichier dans votre cible de débogage, mais pas de publication (ou vice versa).

+0

J'ai actuellement quatre cibles, App, Widget, Tests, UITests, ne signifie u une autre cible à ajouter? –

+0

@SazzadHissainKhan Je fais. Votre cible "App" deviendra essentiellement votre cible de publication. Je voudrais dupliquer cette cible et appeler le nouveau quelque chose comme 'App - Staging', puis vous pouvez changer les fichiers qui appartiennent à chacun. Vous pouvez ensuite définir toutes sortes d'options et de configurations différentes pour cette version. –