Nightwatch kann nicht gefunden werden / Klicken Sie auf Dropdown-Option

8

Ich bin Backpacker und Programmierer und versuche mit der zweiten Fertigkeit Öffnungen in einem vollen Campingplatz zu finden. Anstatt von Grund auf zu crawlen, verwende ich das Ende-zu-Ende-Test-Framework nightwatch.js, um für mich zu navigieren.

Ich habe einen Roadblock getroffen, weil Nightwatch Schwierigkeiten hat, ein bestimmtes Element mit CSS-Selektoren zu finden.

Hier sind die Elemente und die Seite:

Hier ist mein Testcode:

Vorherige Versuche

Mein Testcode wird auf das Auswahlfeld mit #permitTypeId klicken. Es wird sehen, dass #permitTypeId option sichtbar ist. Es wird nicht angezeigt oder auf eine der Optionen geklickt, wenn spezifischere Werte angegeben werden. Die fünf .click() sind allesamt CSS-Selektoren, die ich bereits ausprobiert habe. Keine der Optionen ist auf display:hidden oder display:none festgelegt. Ich habe auch alle oben genannten ohne das .waitForElementToBeVisible() nur für den Fall versucht, dass das Warten das Dropdown versteckt.

Ich habe erfolgreich Optionen aus verschiedenen Dropdown-Menüs auf dieser Website erfolgreich angeklickt. Gerade dieser verursacht Kopfschmerzen.

Die Tests laufen mit dem aktuellsten Selenium Server und Firefox auf Mac Yosemite.

tl; dr

Nightwatch.js / Selenium wird nicht auf etwas aus einem Dropdown-Menü klicken.

    
Adam 14.12.2014, 06:40
quelle

4 Antworten

9

Der Pfad ...

Cory brachte mich dazu, über jQuery und native DOM-Manipulation nachzudenken. Versucht, diese Route zu gehen und war erfolgreich die Auswahl der richtigen Option mit Selenium% .execute() Funktion:

%Vor%

Allerdings wurde das onchange -Ereignis nicht ausgelöst.

Sah dies posten Das brachte mich dazu, über die Verwendung von Tasten und dieses nachzudenken schlug vor, mit den Pfeiltasten ein Element <select> zu der Option zu navigieren und dann die Eingabetaste zu drücken.

... zur Lösung

%Vor%

Ich habe festgestellt, dass dies ein Problem mit Firefox ist. Chrome und PhantomJS funktionieren gut, indem sie <option> -Tags anklicken.

    
Adam 15.12.2014, 06:06
quelle
5

Sie sollten in der Lage sein, auf diese Weise zu klicken

%Vor%     
Gokul Muralidharan 24.08.2015 21:52
quelle
4

Zusätzlich konnte ich ein click -Ereignis für die spezifische Option hinzufügen, nachdem ich einen Klick für die Auswahl gemacht habe. Siehe mein Beispiel unten:

%Vor%     
mcsharps 03.02.2015 21:13
quelle
0

eine andere Lösung:

%Vor%     
Guillaume Vincent 06.09.2017 08:13
quelle

Tags und Links