2017-10-17 1 views
-2

Je voudrais vérifier que la date qui apparaît dans la chaîne correspond à la date d'aujourd'hui.Java/Webdriver - Date de comparaison spécifiée dans la chaîne avec la date du jour

Pour exemples: 1. Accédez à la page 2. texte ne sera pas affiché chaîne "Données actuelles au 17/10/2017" 3. Affirmons à la date d'aujourd'hui réussite/échec

+0

Excellent. Quelle partie vous cause des difficultés? –

+0

J'ai besoin de récupérer la date du texte comme date et de comparer à la date actuelle dans le système. Le format doit être ("aaaa-MM-jj"); – Gamcusa

+0

Connaissez-vous la [classe DateTimeFormatter] (https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html) et avez-vous essayé de l'utiliser? –

Répondre

0

`WebElement dateText = driver.findElement (By.xpath ("// div [contient (., 'Data Current à partir de')]"));

String fullDateString = dateText.getText(); 
    DateFormat df = new SimpleDateFormat("yyyy-MM-dd"); 

    String patternString = "(\\d+-\\d+-\\d+)";//use of Reg Ex 

    Pattern pattern = Pattern.compile(patternString); 

    Matcher matcher = pattern.matcher(dateText.getText()); 

    Date repodate = new Date(); 

    while (matcher.find()) { 
     repodate = df.parse(matcher.group()); 
    } 

    Date currDate = df.parse(df.format(new Date())); 

    if (currDate == repodate) ///verifing 
     ; 
    { 
     System.out.println(currDate); 
     System.out.println(repodate); 
    } 

    Assert.assertEquals(repodate, currDate);//asserting` 
+0

laissez moi savoir si vous l'auriez fait différemment, s'il vous plaît! – Gamcusa