2016-07-09 9 views
0

Ich versuche zu verstehen, warum ein if else nicht mit Selen und Python funktioniert. Ich habe verschiedene Varianten ausprobiert, aber ich glaube, das sollte funktionieren und stur, vielleicht blind, immer wieder darauf zurückkommen.Selen und Python mit If-Anweisung

Beispiel:

if (self.driver.find_element_by_class_name('product')).text == "FEATURED PRODUCTS": 
     print "\nHome Pass" 
    else: 
     print "\nHome Fail" 

dies auch versucht

if self.driver.find_element_by_class_name("product-teaser-list").text in "Featured Products": 

Jede Ausführung kehrt Fail und wenn behaupten verwenden, unten wird der .text gefunden. Ich weiß also, dass der Text mit dieser Methode gefunden wird.

assert "FEATURED PRODUCTS" in self.driver.find_element_by_class_name('product').text 
+3

'==' ist eine andere Quest im Vergleich zu 'in' - Letzterer ist Teilstring wie die vorherige exakte Übereinstimmung ... – Dilettant

+0

Ersetze' == 'mit' in'. – cdarke

+0

Dank @Dilettant und @cdarke habe ich das auch versucht und 'fail' zurückgegeben. – wildshroom

Antwort

0

versuchen Sie diesen folgenden Code.

if "FEATURED PRODUCTS" in self.driver.find_element_by_class_name('product').text 

Wenn das nicht funktioniert, versuchen Sie, das zu debuggen. etwas weißer Raum schafft ein Problem. Wenn jedoch die assert-Anweisung übergeben wird, sollte folgendes funktionieren.

+0

funktioniert. Schließen Sie die Methode nur mit ':' – wildshroom