Ich bin relativ neu bei Watir, kann aber keine gute Dokumentation (Beispiele) finden, um zu überprüfen, ob ein Element existiert. Es gibt natürlich die API-Spezifikationen, aber diese machen mir wenig Sinn, wenn ich kein Beispiel finde.
Ich habe beide Kombinationen ausprobiert, aber nichts scheint zu funktionieren ... if browser.image (: src "/media/images/icons/reviewertools/editreview.jpg") .existiert dann... if browser.image (: src "/media/images/icons/reviewertools/editreview.jpg").existiert? dann ...
Wenn jemand einen konkreten Vorschlag hat, wie dies zu implementieren ist, bitte helfen Sie! Danke!
Es scheint, dass Ihnen ein Komma zwischen den Parametern fehlt.
Sollte
sein %Vor%Sie können diese Seite auch in Zukunft nützlich finden, um zu wissen, welche Attribute werden unterstützt.
Scheint so, als ob Sie es richtig benutzen. Hier ist ein alter RDoc von Watir .
Funktioniert es nicht, weil Watir es nicht finden kann? Schwer zu sagen, da es keine Quelle oder keinen Link zu der Seite gibt, die getestet wird. Ich denke, ich verwende nur image.exists? . Im Allgemeinen treten folgende Fehler auf, wenn das Bild existiert, aber nicht gefunden wird:
Probieren Sie diese aus, aber bitte lassen Sie mich wissen, was funktioniert hat. Noch etwas, wonach suchen Sie? Wenn es Teil der Testkriterien ist, können Sie damit umgehen. Wenn Sie darauf klicken müssen, dann vergessen Sie die .exists? und klicke einfach darauf. Ruby wird dich wissen lassen, wenn es nicht da ist. Wenn Sie es brauchen, um Gnade zu sein, erfahren Sie mehr über beginnen / retten .
Viel Glück,
Dave
Der von Ihnen gepostete Code sollte gut funktionieren.
Edit: Hoppla, falsch. Wie Katmoon darauf hingewiesen hat, fehlt ein Komma.
Ein Problem, in das Sie geraten könnten, ist, wenn die von Ihnen angegebene Browservariable tatsächlich ein Element ist, das nicht existiert.
z.B.
%Vor%Der obige Code wird eine Watir :: UnknownFrameException auslösen. Sie können dies umgehen, indem Sie zunächst prüfen, ob der Rahmen existiert oder den Code in einem Start- / Rettungsblock umgibt.