Ce site met a disposition le build journalier de la traduction francaise du Maven: The Definitive Guide
Consultez :
  • Les documents de reference sur le projet original
  • Les sources de la traduction fr sur GitHub
  • maven


    4.11. Ajouter des ressources pour les tests unitaires

    Les tests unitaires ont accès à des ressources qui leurs sont spécifiques. Souvent vous aurez des fichiers contenant les résultats attendus ou des données de test dans le classpath des tests. Dans ce projet, le fichier XML ny-weather.xml est utilisé dans le test YahooParserTest. Le résultat attendu de la classe WeatherFormatter se trouve dans le fichier format-expected.dat.

    Pour ajouter ces ressources de test, vous allez devoir créer le répertoire src/test/resources. C'est le répertoire par défaut dans lequel Maven recherche les ressources de test. Pour créer ce répertoire, exécutez les commandes suivantes depuis le répertoire racine de votre projet.

    $ cd src/test
    $ mkdir resources
    $ cd resources

    Une fois que vous avez créé le répertoire de ressources, créez un fichier format-expected.dat dans le répertoire resources.

    Exemple 4.15. Résultat attendu du WeatherFormatterTest du projet Simple Weather

    *********************************
     Current Weather Conditions for:
      New York, NY, US
      
     Temperature: 39
       Condition: Fair
        Humidity: 67
      Wind Chill: 39
    *********************************
    

    Ce fichier devrait vous rappeler quelque chose. C'est le même résultat que celui que nous avions obtenu lorsque nous avions exécuté le projet Simple Weather project avec le plugin Maven Exec. Le deuxième fichier que vous devrez ajouter au répertoire de ressources est ny-weather.xml.

    Exemple 4.16. Données XML en entrée de YahooParserTest du projet Simple Weather

    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    <rss version="2.0" xmlns:yweather="http://xml.weather.yahoo.com/ns/rss/1.0" 
         xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#">
     <channel>
     <title>Yahoo! Weather - New York, NY</title>
     <link>http://us.rd.yahoo.com/dailynews/rss/weather/New_York__NY/</link>
     <description>Yahoo! Weather for New York, NY</description>
     <language>en-us</language>
     <lastBuildDate>Sat, 10 Nov 2007 8:51 pm EDT</lastBuildDate>
    
     <ttl>60</ttl>
     <yweather:location city="New York" region="NY" country="US" />
     <yweather:units temperature="F" distance="mi" pressure="in" speed="mph" />
     <yweather:wind chill="39" direction="0" speed="0" />
     <yweather:atmosphere humidity="67" visibility="1609" pressure="30.18" 
                          rising="1" />
      <yweather:astronomy sunrise="6:36 am" sunset="4:43 pm" />
      <image>
     <title>Yahoo! Weather</title>
    
     <width>142</width>
     <height>18</height>
     <link>http://weather.yahoo.com/</link>
     <url>http://l.yimg.com/us.yimg.com/i/us/nws/th/main_142b.gif</url>
     </image>
     <item>
     <title>Conditions for New York, NY at 8:51 pm EDT</title>
    
      <geo:lat>40.67</geo:lat>
     <geo:long>-73.94</geo:long>
      <link>http://us.rd.yahoo.com/dailynews/rss/weather/New_York__NY/\</link>
     <pubDate>Sat, 10 Nov 2007 8:51 pm EDT</pubDate>
     <yweather:condition text="Fair" code="33" temp="39" 
                         date="Sat, 10 Nov 2007 8:51 pm EDT" />
     <description><![CDATA[
    <img src="http://l.yimg.com/us.yimg.com/i/us/we/52/33.gif" /><br />
     <b>Current Conditions:</b><br />
     Fair, 39 F<BR /><BR />
     <b>Forecast:</b><BR />
      Sat - Partly Cloudy. High: 45 Low: 32<br />
      Sun - Sunny. High: 50 Low: 38<br />
     <br />
     ]]></description>
     <yweather:forecast day="Sat" date="10 Nov 2007" low="32" high="45" 
                        text="Partly Cloudy" code="29" />
    
    <yweather:forecast day="Sun" date="11 Nov 2007" low="38" high="50" 
                       text="Sunny" code="32" />
      <guid isPermaLink="false">10002_2007_11_10_20_51_EDT</guid>
     </item>
    </channel>
    </rss>

    Ce fichier contient un document XML de test pour YahooParserTest. Nous utilisons ce fichier afin de tester le parseur YahooParser sans avoir à récupérer la réponse XML de Yahoo! Météo.