2017-12-13 3 views
0

Ich habe eine Dropdown-Implementierung mit ng-repeat mit einem orderBy Zustand.Schwierigkeitsgrad in Winkelmesser Automatisierung für Element innerhalb ng-Wiederholung mit einer Bestellung von Bedingung

ng-repeat="state in vm.states | orderBy : 'state'"

Ich versuche, dies zu implementieren:

//Get Array elements from States dropdown and select a state. 

    browser.findElement(state).click(); //this is where we click on dropdown to make drop down items visible. 

    browser.findElements(by.repeater('state in vm.states')).then(function (item1) { 
      item1[2].click(); 
    }); 

beobachtet Auch das Hinzufügen Zustand in ng-repeat enthalten in unserem Locator ist in Syntaxfehler führt, die ich fühle mich erwartet. Aber ich bin dabei, mit der Auswahl eines Items aus dem Drop-down-Menü fortzufahren, weil diese Bedingung "Order by" lautet und ich nach der Hilfe der Community Ausschau halte. Bitte lassen Sie mich wissen, wenn mehr Informationen dazu benötigt werden.

Dank im Voraus

+0

Ich kann nicht verstehen, was Sie wollen!? Was ist dein Ziel? – Maher

+0

@Maher, Ziel ist, ein Element aus dem Dropdown auszuwählen. Ich habe erfolgreich die Automatisierung von Drop-Down-Elementen durchgeführt, vor denen nur ng-repeat ohne Orderby drin war. Aber in diesem Fall haben wir ng-repeat zusammen mit orderBy implementiert, um eine sortierte Liste anzuzeigen. Dies macht es mir schwer, Dropdown-Elemente zu finden und suchte nach Expertenhilfe. – Abhinandan

Antwort

0

glaube ich, besser, die "default" ElementFinder Syntax von Protractor zu verwenden: die beispielsweise Element (by.repeater ('-Zustand in vm.states')) ;,

in Ihrem Fall

// Seite Objektklasse

this.state = element.all(by.repeater('state in vm.states'')); 

    this.getState = function() { 
     return this.state.get(2).click; 
     }; 

//

in spec Datei Seite Klasse aufrufen
page.getState(); 
Verwandte Themen