2017-04-07 3 views
0

ich eine Seite mit URL haben -Vergleich URLs mit Protractor

http://localhost:7070/application/service-architecture/572RJ78544/summary

Wenn ich auf eine bestimmte Schaltfläche klicken, wird die URL Änderungen -

http://localhost:7070/developer/service-architecture/572RJ78544/summary

Gibt es eine Möglichkeit zu Überprüfen Sie, ob diese beiden URLs auf dieselbe Seite verweisen, indem Sie den Winkelmesser verwenden. Oder durch reguläre Ausdrücke oder etwas in der Art mit

Eg - Sag mal, Service Architecture und Zusammenfassung ist die gleiche

Antwort

0

Es ist nicht spezifisch Winkelmesser, mehr JS ;-)

Wenn Sie die URL abgerufen haben (mit zum Beispiel getCurrentUrl()) Sie können test/match/indexOf Ihre aktuelle URL gegen eine gegebene URL.

Normalerweise verwende ich die test mit einer Regex, aber es liegt an Ihnen, was Sie verwenden möchten.

Zum Beispiel:

Wenn Sie eine URL http://example.com/foo-http://example.com/foo/bar zu ändern, um warten, dann können Sie den Code unten in Winkelmesser (für maximal 10 Sekunden) zu warten, verwenden Sie die URL zu ändern, sonst nicht mit einem abgelehnten Versprechen

const urlRegExp = new RegExp('http://example.com/foo'); 
return browser.driver.wait(() => { 
     return browser.driver.getCurrentUrl() 
      .then(url => urlRegExp.test(url)); 
    }, 10000); 

this helps