Um einen Übergang von einem Zustand (vorher) zu einem anderen (nach) zu testen, benötigen Sie eine Möglichkeit, die App in den Zustand vor zu versetzen.
Ihre App wird sicherlich nicht während laufen das Betriebssystem aktualisiert wird, so dass Sie wirklich nur um die App kümmern Anfahren und entdecken, dass das Betriebssystem aktualisiert wurde. Es gibt ein paar Optionen:
Kopieren Sie alle Ihre App-Datendateien von einem Gerät der „alte“ iOS-Version (5.1 entsprechend Ihre Frage) laufen auf ein Gerät mit der neuen (6.0) Version ausgeführt wird. Mit dem Organisator in Xcode können Sie den "Container" Ihrer App ganz einfach von einem Gerät auf Ihren Mac kopieren oder umgekehrt.
Lassen Sie Ihre App die Daten im "alten" Format schreiben. Es ist nicht ungewöhnlich, dass eine App je nach Umgebung über Methoden zum Lesen und Schreiben von Daten in verschiedenen Formaten verfügt. Daher ist es oft einfacher, Ihre App dazu zu bringen, Daten im alten Format zu schreiben, als von einem alten Gerät zu kopieren.
Welchen Weg Sie wählen, denken Sie an anderen Orten (wie Benutzereinstellungen), wo Sie könnten OS versionsabhängige Änderungen vorgenommen und diejenigen wieder auf Werte gesetzt, die dem vorherigen OS entsprechen. Dies gilt insbesondere für Keychain-Elemente, die nicht in der Sandbox Ihrer App gespeichert sind.
Einheit Test-Frameworks (wie Apples XCTest Framework) hat in der Regel einen Setup-Mechanismus, den Sie Ihre Anwendung auf den vor Zustand zurückgesetzt werden, einschließlich Kopieren von Dateien verwenden könnten, das Hinzufügen und Schlüsselbund Artikel zu entfernen, das Setzen von Voreinstellungen Elementen, etc. Sie Anschließend können Komponententests hinzugefügt werden, die Code ausführen, der an einem Update beteiligt ist, und die Ergebnisse testen. Mit einer Reihe von leicht wiederholbaren Tests können Sie Probleme leichter beheben.
Wie auch immer Sie vorgehen, das Ziel besteht darin, die App in denselben Zustand zu versetzen, in dem sie sich befinden würde, wenn sie zum ersten Mal nach einer Betriebssystemaktualisierung ausgeführt würde.Sie müssen sich keine Gedanken darüber machen, das eigentliche Betriebssystem-Update zu simulieren. Sie müssen die App nur dazu bringen, zu glauben, dass das Update gerade passiert ist.
Was möchten Sie damit testen? Testen der App separat auf 5.1 und auf 6.0 sollte ausreichen. Die Anwendung kann nicht ausgeführt werden, wenn das System aktualisiert wird. – Sulthan
Es gibt tatsächlich Möglichkeiten, Ihr Betriebssystem herunterzustufen - halten Sie Ausschau nach einem kleinen Regenschirm - z. http://www.idownloadblog.com/2012/05/25/save-your-shsh-blobs-5-1-1/ – Till
Sulthan, ah, die Unterschiede zwischen Theorie und Praxis ... wir denken, dass es eine gewisse Logik gibt unsere App, die den Übergang unterbricht und einige der App-Daten in einem inkonsistenten Zustand lässt. Till, danke, wir versuchen das, wenn wir ein Gerät finden, das wir noch nicht auf iOS 6.0 aktualisiert haben. Trotzdem wäre es am einfachsten durch den Simulator. –