2016-06-06 24 views
0

Ich erstelle Automatisierung für den Produkt-Prozess für verschiedene Länder. Auf der Bestellbestätigungsseite verifiziere ich, ob Steuerpreis und Versandkosten auf 0 gesetzt sind oder nicht.Überprüfen Sie den Wert des Etiketts in Selen

Hier ist mein Code:

String expectedshippingprice = "$0.00"; 
String actualshipingprice = driver.findElement(By.xpath("html/body/div[1]/div[6]/div[1]/div/fieldset/div[2]/div[2]")).getText(); 

Assert.assertEquals("Verify Shipping Price", expectedshippingprice, actualshipingprice); 

Aber ich bin immer Fehler:

java.lang.AssertionError: $0.00 expected [$0.00] but found [Verify Price]

Hier ist der HTML-Code:

<div class="row"> 
 
    <div class="col-sm-8 col-md-8 col-xs-8 col-lg-8">Product Price</div> 
 
    <div class="col-xs-4 col-lg-4 col-md-4 col-sm-4">$19.95</div> 
 
</div> 
 
<div class="row"> 
 
    <div class="col-sm-6 col-md-4 col-xs-8 col-lg-8">Shipping</div> 
 
    <div class="col-xs-4 col-lg-4 col-md-4 col-sm-4">$0.00</div> 
 
</div> 
 
<div class="row"> 
 
    <div class="col-sm-6 col-md-4 col-xs-8 col-lg-8">Tax</div> 
 
    <div class="col-xs-4 col-lg-4 col-md-4 col-sm-4">$0.00</div> 
 
</div>

Bitte helfen Sie!

+0

Könnten Sie uns auf die Webseite verweisen, mit der Sie es zu tun haben? – alecxe

+1

Das ist furchtbar spröde. Ich würde empfehlen, Ihren Elementen IDs oder Klassen zuzuweisen und diese zur Auswahl zu verwenden. besser noch, benutze eine ordentliche Tabelle. – chrylis

+0

** 'Assert.assertEquals' ** funktioniert für mich. Sind Sie sicher, dass Sie keinen weiteren Fehler machen? – ManishChristian

Antwort

1

Vorausgesetzt, Sie richtig org.junit.Assert importiert (und nicht eine andere Assert), Funktion

Assert.assertEquals(message, expected, actual); 

kehrt AssertionException wie folgt aus:

java.lang.AssertionError: <message> expected [<expected>] but found [<actual>] 

So auf der Grundlage Ihrer Ausnahme (java.lang.AssertionError: $0.00 expected [$0.00] but found [Verify Price].), schließe ich kann dass Sie assertEquals so genannt haben:

Assert.assertEquals(expectedshippingprice, actualshipingprice, "Verify Price"); 

Obwohl Ihre Frage den richtigen Weg zeigt. Ändern Sie einfach die Reihenfolge der Parameter auf die gleiche Weise, wie Ihre Frage gerade angezeigt wird:

Assert.assertEquals("Verify Shipping Price", expectedshippingprice, actualshipingprice); 
+0

Ich änderte die Reihenfolge als: Assert.assertEquals (actualshipingprice, "$ 0.00"); Es funktioniert gut. Danke Jungs! – sigma