Ich mache einige Tests in Protractor und stieß auf ein kleines Problem:Winkelmesser: Wie kann man erwarten, dass die URL des Browsers der URL entspricht, die nach der Registrierung eines neuen Benutzers eine ID hat?
ich einen Test gemacht um einen neuen Benutzer zu registrieren, wenn ich es fertig Registrierung der URL wird so etwas wie diese:
#/user/592/profile
Also, meine Frage ist, wie kann ich es schaffen, die ID des neuen Benutzers zu bekommen, um eine wahre in meinem Test zu erhalten? Etwas wie dieses:
expect(browser.getCurrentUrl()).toEqual(browser.baseUrl+#/user/ID_OF_NEW_USER/profile);
Wie kann ich das tun? Wenn es natürlich möglich ist.
Danke, das funktioniert auch! Kannst du mir bitte diese Zeile erklären? var user_id = url.split ("Benutzer /") [1] .replace ("/ profile", ""); –
Nehmen wir an, Ihre URL lautet 'www.example.com/#/user/592/profile'. url.split ('user /') wird Ihre URL-Zeichenfolge mit dem Trennzeichen als "user /" teilen und die Ausgabe wird ein Array ["www.example.com/#/","592/profile"] sein. Jetzt nehmen wir den zweiten Wert aus dem Array und ersetzen das Wort '/ profile' durch einen leeren Wert. also wird die Ausgabe sein '(" 592/profile "). ersetzen ("/profile ",) => 592' –
Oh, jetzt verstehe ich, vielen Dank, es wird sehr nützlich für mich in einer Zukunft, ich werde deine Antwort wählen, da es für die gesamte Länge von user_id funktioniert und weniger Codezeilen verwendet :) Vielen Dank! –