click () auf css Selector funktioniert nicht in Selenium webdriver

9

HTML

%Vor%

Ich habe keine ID oder einen Namen dafür. Daher schreibe ich

%Vor%

Aber click () passiert nicht.

Versucht     driver.findElement (By.cssSelector (". button [Wert = Suchen]")). click ();

Versucht     Wert = 'Suche' (einfache Anführungszeichen).

diese Selektoren arbeiten in

%Vor%     
user1769790 23.10.2012, 23:12
quelle

4 Antworten

2

Ich würde ein Stück js injizieren, um sicher zu sein, dieses Problem zu lösen:

Zuerst Element mit DOM suchen (überprüfen in Firebug):

%Vor%

Aus der Retrospektive deines Elements ist es wie folgt:

%Vor%

Bitte beachten Sie: document.getElementsByTagName('input') gibt Ihnen ein Array von DOM-Elementen zurück. Und es richtig indizieren, z. document.getElementsByTagName ('input') [0], document.getElementsByTagName ('input') 1 , Dokument. getElementsByTagName ('Eingabe') [2] .... usw. können Sie Ihr Element finden.

Hoffe das hilft dir. Grüße.

    
eugene.polschikov 24.10.2012, 12:49
quelle
1

Bitte verwenden Sie den folgenden Code.

driver.findElement (By.cssSelector ("Eingabe [Wert = \" Suche \ "]")). click ();

Es funktioniert für mich. Und stellen Sie sicher, dass der Name "Suchen" ist, denn es ist Groß- und Kleinschreibung.

Danke

    
Jotish 16.10.2013 09:53
quelle
0

Sind Sie sicher, dass Sie mit diesem CSS-Selektor ( input[value=Search] ) auf Ihrer Seite nur ein Ergebnis haben?

    
Ioan 01.11.2012 13:35
quelle
0

einfache Anführungszeichen fehlen in Ihrem Code, die [Wert = Suche] sollte durch [Wert = 'Suche]] ersetzt werden.

Zuerst müssen Sie überprüfen, ob der von Ihnen verwendete Selektor funktioniert oder nicht.

Wenn Sie chrome oder FF verwenden, können Sie diese Schritte ausführen,

  1. Gehen Sie zu der Seite, auf der die Schaltfläche (zum Anklicken) vorhanden ist,

  2. Öffnen Sie die Webkonsole und geben Sie Folgendes ein und klicken Sie auf die Eingabetaste.

    $ ("input [value = 'Search']")

oder

%Vor%

oder

%Vor%

Sie erhalten eine Liste von Elementen, auf die Sie mit dieser Auswahl zugreifen können, wenn diese Liste nur ein Element enthält (Schaltfläche, auf die Sie klicken möchten), dann ist diese Auswahl für Ihre Verwendung gültig. Andernfalls müssen Sie versuchen Sie einen anderen Selektor ..

Wenn einer der obigen Selektoren gültig ist, müssen Sie Ihren Code entsprechend ändern.

%Vor%     
Amith 16.10.2013 11:11
quelle