2011-01-11 7 views

Antwort

1

Die Frage unterstützt werden, ist nicht 100% klar, was Sie zu tun versuchen, aber ich werde zu beantworten versuchen sowieso.

Wenn ich Sie richtig lese, arbeiten Sie innerhalb der Selenium-Skriptsprache, und Sie möchten Ihr Selenium-Skript bestimmen, dass die Seite ein <a>-Element mit rel='nofollow'-Attribut enthält.

Nach der Selenium reference page sollte dies möglich sein, da Selen die meisten CSS-Selektoren unterstützt (die Ausnahme außer Pseudo Selektoren, aber sie sind nicht relevant für Sie hier).

Es unterstützt auch DOM-Referenzen und XPath-Referenzen, so dass Sie auf die eine oder andere Weise alles überprüfen können.

Für CSS lautet die Syntax css=cssSelector, in Ihrem Fall wäre dies also css=a[rel=nofollow].

Dieser Selektor prüft die Seite für jedes <a> Element mit dem Attribut rel=nofollow. Wenn Sie, wenn ein spezifisches Element dieses Attribut muss überprüfen müssen, ändern Sie dann die Wähler die ID oder Klasse des Elements enthält, die Sie wollen - zB a#myspecificelement[rel=nofollow]

Dies würde mit einem Selen-Befehl verwendet werden, wie assertElementPresent() zu überprüfen dass das Element vorhanden ist oder eine Reihe anderer möglicher Selenium-Befehle.

Hoffe, dass hilft.

+0

Danke Spudley !!! es hat funktioniert ... Ich habe das gleiche versucht, aber mit einem zusätzlichen Abstand zwischen dem und dem rel-Attribut. – Siri

1
a[rel="nofollow"] 

Funktioniert nicht in allen Browsern.

Eine bessere Lösung wäre Jquery zu verwenden, die Wähler in allen Browsern

$('a[rel="nofollow"]') 
+0

Ich denke, dass er nach einer Lösung innerhalb des Seleniums sucht, also wird diese Antwort wahrscheinlich nicht helfen. – Spudley

+0

Ich vermisste das im Fragetitel, sollte ich meine Antwort löschen? –

+0

Wenn es dem Fragesteller nicht hilft und Sie es nicht reparieren können, dann tut es ja, ja, Sie könnten es löschen. Es ist nicht obligatorisch, aber es könnte eine gute Idee sein. :) – Spudley

Verwandte Themen