Ich habe einige UI-Tests in Xcode 7 geschrieben und wenn ich auf eine Schaltfläche verweisen muss, verwende ich seine accessibility.identifier
. Diese Logik funktionierte für alle Sprachen korrekt.UI Automatisierungstest mit mehrsprachiger iOS
app.buttons["signin"].tap()
Mit Xcode 7.3, wenn ich versuche, diesen Code starten Sie den Test schlägt fehl, da die Taste nicht gefunden werden kann, wenn die Simulator Sprache Englisch nicht. Ich habe auch versucht, die Navigation aufzuzeichnen, um zu überprüfen, wie Xcode diese Schaltfläche liest, wenn die Sprache anders ist als Englisch, und ich habe herausgefunden, dass sie die Übersetzungen als Schlüssel verwendet ... das macht überhaupt keinen Sinn!
Diese Tests waren wirklich nützlich, um Screenshots zu erstellen ... aber offensichtlich mit diesem Problem kann ich keine Tests ausführen (und Bildschirme erstellen) für alle Sprachen.
Wie kann ich absolut auf eine Schaltfläche zeigen, wenn sie nicht durch Bezeichner erkannt wird !?
---- EDIT
fand ich das Hauptproblem. Das Unternehmen, das die Übersetzung tat hat die labelidentifier Felder übersetzt:/
Ich versuche, das Element zu erhalten mit app.buttons.elementBoundByIndex(1)
aber es scheint nicht richtig