-
Notifications
You must be signed in to change notification settings - Fork 0
Testing
Ole W edited this page Jul 8, 2024
·
10 revisions
Wir testen auf unterschiedliche Weisen.
- Einige Tests setzten ein aktives Spotify Device voraus
- Es wird eine korrekte clientId und ein clientSecret erwartet
Package: SpotifyConnect-Tests
- Hier werden Subclases von
TestCase
angelegt, um Tests zu schreiben und auszuführen, die- Keinen ApiEndpoint testet (auch nicht mit Mock)
- Keinen Access-Token braucht
Package: SpotifyConnect-Mock-Tests
- Hier wird jeder ApiEndpoint mit
returnsTestContent: true
getestet - Dafür wir eine Subclass von
TestCase
angelegt undSPOCMockTestApi<...>
benannt (z.B.SPOCMockTestApiSearch
) - In dieser Klasse gibt es dann wahrscheinlich eine
testMockApi<...>Execute
Methode (z.B.testMockApiSearchExecute
)
Package: SpotifyConnect-Auth-Tests
- Hier kann mit einem validen
SPOCAuthorizer
getestet werden - Eher weniger für Unit-Tests sondern für System-Tests
- Hierfür eine Subclass von
SPOCTestCaseWithAuth
anlegen. - Ein fertiger Authrizer kann über
self auth
verwendet werden. - Falls ein ApiEndpoint getestet wird diesen mit
SPOCTestApi<...>
benennen (z.B.SPOCTestApiTrack
) - In dieser Klasse gibt es dann wahrscheinlich eine
testApi<...>Execute
Methode (z.B.testApiTrack
) - So könnte eine
setUp
aussehen, falls ein ApiEndpoint getestet wird
setUp
apiEndpoint := SPOCApiTrack new authorizer: self auth; yourself
- beim Ausführen der Tests muss darauf geachtet werden, dass sie überhaupt die Möglichkeit haben, zu passen:
- ein device muss aktive sein, damit alle Tests passen, die getPlaybackState nutzen
- für next und previous muss es eine Queue (Playlist/Album) geben, bei der es einen vorherigen und nächsten track gibt