2017-06-20 1 views
0

J'ai un projet Obj-C auquel j'ajoute une cible de test d'interface utilisateur. Comme j'utilise les extensions réseau, je ne peux pas utiliser la signature automatique du code. Lorsque j'ai créé la cible du test de l'interface utilisateur, j'ai sélectionné Swift comme langue. (Bien que j'aie essayé Obj-C aussi.) Il a par défaut utilisé la signature automatique de code et m'a causé beaucoup de problèmes essayant de comprendre comment contourner cela. J'ai créé un profil de signature avec l'ID de com.company.MyAppUITest au lieu de com.company.MyAppUITest automatiquement créé. Bien que vous ne puissiez pas voir ce profil dans le portail de dev il semble être là car il ne me laissera pas créer manuellement un avec un id de com.company.MyAppUITests. J'ai donc résolu le problème de signature de code avec la cible de test de l'interface utilisateur. Mon problème est que quand je vais à Product> Test, il crée une application avec une icône générique appelée MyAppUITest et l'exécute au lieu d'exécuter MyApp.Xcode UI test génère et lance une nouvelle application MyAppUITests?

Xcode 8.3.3

iOS 10.3.2

Répondre

1

Il est parfaitement normal que Xcode installe une nouvelle application avec une icône générique qui porte le nom de votre cible UI test. Il est cette application qui sera chargé de lancer l'application lors de l'exécution du code suivant

// Swift 
XCUIApplication().launch() 

// Objective-C 
[[[XCUIApplication alloc] init] launch]; 

Bien sûr, il ne fonctionnera que si vous définissez le paramètre de l'application cible de votre cible

enter image description here