2016-05-14 12 views
3

Ich teste eine survery Anwendung, in der jede Seite 10 Fragen hat - jede Frage hat 5 Wahlen (Radioknöpfe). Zu Testzwecken muss ich eine Auswahl treffen, entweder die erste oder die letzte - ist nicht wirklich wichtig. Ich würde den Namen der Radioknöpfe nicht kennen, da es für jede Frage völlig zufällig ist.Winkelmesser - wählen Sie ein Radio von unbekannter Gruppe

Meine Logik war zuerst zu den Namen für alle Radio-Tasten und dann wählen Sie letzte Radio aus der Gruppe.

var radioNames = {}; 
    $$("input[type=radio]").filter(function(elem,index){ 
     elem.getAttribute("name").then(function(name){ 
      radioNames[name] = true; 
     }); 
    }).then(function(){ 
     for (name in radioNames){ 
      $$("input[name='" + name + "']").last().click(); 
     } 
    }) 

Es funktioniert gut. Meine Frage: Gibt es eine bessere Logik, mit weniger Codierung, um dies zu erreichen?

+0

Siehe http://stackoverflow.com/questions/27866054/how-to-set-a-radio-button-value-in-protractor –

Antwort

0

map() wäre eine geeignetere Wahl:

$$("input[type=radio]").map(function(elem) { 
    return elem.getAttribute("name"); 
}).then(function(radioNames) { 
    for (name in radioNames) { 
     $$("input[name='" + name + "']").last().click(); 
    } 
}); 
+0

Nizza Danke @alecxe – KitKarson

Verwandte Themen