2017-06-07 1 views
0

J'ai créé une application iOS dans Swift, et j'ai utilisé Firebase Auth et DB pour le backend. Je ne peux pas être très détaillé sur les détails, mais cela implique des services de géolocalisation, et est similaire (bien que beaucoup plus simple) à Uber/Lyft. Les deux pilotes/coureurs partagent la même application. Vous devez cliquer sur un autre bouton pour accéder à l'interface du pilote.Démarche de chargement d'une application iOS de géolocalisation

Je dois créer une simulation où plusieurs utilisateurs virtuels (les deux pilotes/pilotes) utilisent l'application en même temps (je souhaite mesurer le succès/l'échec de chaque action, ainsi que le temps de réponse). Je n'ai pas besoin de randomiser la simulation, mais je dois tenir compte du fait qu'il y a une interaction entre deux utilisateurs. En d'autres termes, ce n'est pas le test de performance habituel où vous vous connectez, affichez le profil, mettez à jour le profil, déconnectez-vous, etc. Il y a une dépendance sur une partie du test à terminer avant que l'autre puisse commencer.

Je voudrais voir si je pourrais avoir des idées sur la meilleure approche pour gérer cela. Je peux fournir plus de détails/contexte, si nécessaire.

Répondre

1

Il y a quelque chose appelé bluepill https://github.com/linkedin/bluepill, mais il ne sert à lancer des cas de XCTest simultanés et Simulateurs, il ne garantit pas l'ordre des essais, il ne fonctionnera pas pour vous

Vous pouvez créer Tests d'interface utilisateur et les exécuter sur deux mac différents, mais vous devez comprendre comment les tests vont interagir et il semble difficile.

Je suggère d'utiliser-only-testing caractéristique du xcodebuild

Vous pouvez créer une interface utilisateur cible de test pour le pilote et une autre cible de test pour le conducteur et ensuite utiliser le drapeau -only-testing pour les tests de Xcode.

Si les tests sont dépendants les uns des autres que vous pouvez faire

-only-testing:RiderUITests/Test1 
-only-testing:DriverUITests/Test1 

-only-testing:RiderUITests/Test2 
-only-testing:DriverUITests/Test2 

Vous avez l'idée.

Fondamentalement, vous pouvez écrire un script ou utiliser fastlanehttps://github.com/fastlane/fastlane et exécuter un seul test à la fois, un par un.

+0

Merci pour la réponse, je vous ai donné la meilleure réponse. J'ai besoin d'un moyen de calculer les métriques et le temps de réponse, donc je ne suis pas sûr que bluepill fonctionnera, mais je vais le vérifier quand même, car cela semble intéressant. – user2411290