Stichwort "wählen Sie "Element" nicht immer korrekt funktioniert
Ich bin vor problem, dass das Schlüsselwort "wählen Sie "Element" nicht immer korrekt funktioniert.
Zum Beispiel, ich möchte gehen auf den link auf der web-site.
xpath für den Link ist der:
${xpathIMButton} xpath=//a/span[contains(text(),"${exprIM}")]
${exprIM} Infrastructure Management
Auf den Link zu klicken mit der Maus verwende ich die folgende:
Wait Until Page Contains Element ${xpathIMButton}
Mouse Over ${xpathIMButton}
Click Element ${xpathIMButton} don't wait
Das ist ziemlich einfach, aber was sehe ich an den Logs ist verwirrend:
Screenshot von der HTML-Quelle der Taste:
So, der Roboter findet den link (Warte Bis die Seite Enthält Element-und Maus-Over) sind OK, aber das Click-Element ausfällt. Auf dem screenshot kann ich sehen, dass die Taste tatsächlich existiert. Was ist also das problem? Warum bekomme ich diese verwirrenden Fehler?
Bin ich mit:
RFW 2.7.5
SeleniumLibrary 2.8.1
Firefox 12
- Ist die Seite mit frames? Ich habe gesehen, ähnliche Probleme, wenn es mehrere Bilder auf der Seite. Verwenden Sie keyword - Wählen Sie Bild, bevor Sie auf das element.
- Nein, es gibt keine frames auf der Seite. Das problem mit den frames ist übrigens auch populär.
- Können Sie nach dem HTML-Quellcode der Seite? Vorzugsweise auf jsfiddle.net oder einen ähnlichen Dienst.
- Sorry, ich kann nicht posten, den gesamten source-code, aber das sollte reichen: gyazo.com/464a0232aa65d622754c4c33c99858f3.png
- Ich bin mit diesem Thema beschäftigen. Ich kann nicht Selenium2Library zu erkennen, die Elemente, die durch Ihren link-text.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen Sie dies:
don't wait
Teil, versuchen Dinge wiedont_wait
oderdont_wait=1
zu sehen, wenn Sie keinen anderen Ausgang. Viel Glück.Click Element
geht, wenn ich eine extra-Attribut (z.B.don't wait
) und schlägt fehl, wenn kein argument angegeben wird. Vielleicht ist es einen Versuch Wert, ein upgrade auf die neueste version von SeleniumLibrary und Selenium-Server. Auch konnte ich nicht reproduzieren, diese mit Selenium2Library.Click Element
begann zu scheitern ist für mich, wenn ich ein Upgrade auf Selen 2.35, SeleniumLibrary 2.9.1 und Selenium2Library 1.2. Mein browser war Firefox 22. DieClick Element
war das drücken einer Schaltfläche "Speichern". Der exakt gleiche code funktionierte 2 mal und beim Dritten mal sagte, es funktionierte, aber die bestätigen-Seite nie auftauchte. Ich habe mein Problem gelöst, indem eineFocus
Schlüsselwort vor meinemClick Element
Der code jetzt funktioniert es dreimal genannt wird. Hoffe, das hilft.
Kann es ein wenig spät für eine Antwort, aber ich hatte genau dieses problem. Was ich Tat, war ein bisschen Wartezeit für die Seite vollständig geladen, dann meine Taste wurde erfolgreich gefunden.
Scheint es, dass Ihr mit der Maus Über könnte das Problem verursachen. Mit der Maus Über kann bewirken, dass das element versteckt, DOM.
Aber das war vor 6 Jahren mit Selen-1-Bibliothek. Nun, wir sind mit Selenium2Library in ROBOT Framework, also, wenn Sie einen Versuch geben oder es schon getan, lassen Sie es uns wissen.