Prüfen, ob bestimmte Elemente sichtbar sind oder nicht

Wie finde ich heraus, ob ein Element im Testacular (Jasmin) sichtbar oder versteckt ist?

Mein DOM sieht so aus:

<div class="span5 value-entry">
    <input type="text" ng-model="query.value" placeholder="Enter value" class="input-large" ng-show="genericInput(criteria.attribute)">
    <select ng-model="query.value" ng-options="entry for entry in filteredValue(criteria.attribute)" class="input-medium" ng-show="!genericInput(criteria.attribute)">
        <option value="">-- Select Value --</option>.
    </select>
</div>

Entweder wird die Auswahl angezeigt oder das Eingabefeld, aber nicht beide. Ich möchte überprüfen, welches Element sichtbar ist (basierend auf einigen anderen Kriterien), kann aber nicht herausfinden, wie der Code funktioniert. Ich habe folgenden Code geschrieben:

expect(element('.value-entry input').is(':visible')).toBe(true);

Aber ich bekomme einen Fehler:

TypeError: Object #<Object> has no method 'is'

Wie überprüfe ich, ob die Eingabe sichtbar und die Auswahl gleichzeitig ausgeblendet ist (und umgekehrt)?

EDIT: Ich möchte hier hinzufügen, dass dies ein End-to-End-Test ist

Antworten auf die Frage(3)

Ihre Antwort auf die Frage