2016-03-26 3 views
0

Ich verwende Winkelmesser. Theres diesen Test im Schreiben: Ich warte auf ein Element, um zu erscheinen. Wenn es angezeigt wird, möchte ich darauf klicken. Also habe ich das getan:Test wartet auf ng-wenn Element nicht funktioniert

it("Test",() => { 
      let k: p.ElementFinder = element(by.className("gift-back")); 
      browser.wait(() => { 
       let promise = k.isPresent().then((isPresent: boolean) => { 
        console.log(isPresent); 
        return isPresent; 
       }); 
       return promise; 
      }); 
      k.click(); 

Das Problem ist, dass das Element ich warte erscheinen (das Element mit der Klasse Geschenk-back) ist ein ng-wenn element.So dieses Element ist nicht in der DOM die ganze Zeit und dieser Test funktioniert nicht wirklich. Hilfe oder Wallaround wird sehr geschätzt!

Antwort

1

Es gibt einen eingebauten in Erwarteter Zustand für die "presence" checks, versuchen Sie es:

var EC = protractor.ExpectedConditions; 
var elm = element(by.className("gift-back")); 
browser.wait(EC.presenceOf(elm), 5000); // wait up to 5 seconds 
+0

ExpectedConditions existiert nicht ... :( –

+0

@Bakanomercy interessant Welche Winkelmesser Version verwenden Sie – alecxe

+0

die Version ist.? 3.0.0 –