2010-12-01 12 views
7

Ich habe Probleme mit regexp in meiner assertEquals() -Anweisung. Dies ist die Aussage.Verwenden von Regexp in assertEquals() funktioniert nicht

Assert.assertEquals("regexp:*TST-*[0-9]{5}", driver.getTitle()); 

Aber ich bekomme diese Fehlermeldung:

org.junit.ComparisonFailure: expected:<[regexp:*TST-*[0-9]{5}]> but was:<[[#TST-23570] This is the new summary]> 

Es sieht aus wie die regexp nur eine Zeichenfolge, die verglichen wird. Was vermisse ich?

+2

Wo Sie die Tatsache gesehen haben, dass Sie nur verwenden können "regexp:" in einem assertEquals? – Falmarri

+0

@Falmarri - Ich frage mich das Gleiche :) (+1) – javamonkey79

+0

Ich lerne gerade so geben Sie mir eine Pause. – John

Antwort

10

Es sieht nicht wie du bist mit die Regex. Es scheint so, als ob du das hier versuchst?

Assert.assertTrue(driver.getTitle().matches("*TST-*[0-9]{5}")); 

EDIT # 1:

Es scheint auch, wie Sie Ihre regex nicht ganz richtig sein könnte, versuchen:

Assert.assertTrue(driver.getTitle().matches(".*TST-\\d{5}.*")); 
+0

Danke, das funktioniert super. Alles was ich brauchte war ein Beispiel. Jetzt habe ich es verstanden. – John

+0

Wenn es das ist, was Sie brauchten, stört es Sie, diese Antwort zu verbessern und/oder anzunehmen? Vielen Dank :) – javamonkey79