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.10. Ajouter des dépendances dans le scope test

    Le test WeatherFormatterTest utilise une classe utilitaire fournie par Apache Commons IO — la classe IOUtils. IOUtils apporte un certain nombre de fonctions static pratiques qui éliminent la plus grande partie du travail de la manipulation des entrées/sorties. Dans le cas particulier de ce test unitaire, nous avons utilisé IOUtils.toString() pour copier la ressource format-expected.dat du classpath dans une String. Nous aurions pu faire cela sans Commons IO, mais nous aurions dû écrire six ou sept lignes de code supplémentaires avec différents objets de type InputStreamReader et StringWriter. La véritable raison pour laquelle nous avons utilisé Commons IO, c'est qu'elle nous fournit une excuse pour ajouter la dépendance Commons IO au scope test.

    Une dépendance dans le scope test est une dépendance qui est disponible dans le classpath uniquement durant la compilation et l'exécution des tests. Si votre projet était un war ou un ear, une dépendance dans le scope test ne serait pas incluse dans l'archive résultant du projet. Pour ajouter une dépendance dans le scope test, ajoutez la balise dependency à la section dependencies de votre projet, comme cela est fait dans l'exemple qui suit :

    Exemple 4.14. Ajout d'une dépendance dans le scope test

    <project>
      ...
      <dependencies>
        ...
        <dependency>
          <groupId>org.apache.commons</groupId>
          <artifactId>commons-io</artifactId>
          <version>1.3.2</version>
          <scope>test</scope>
        </dependency>
        ...
      </dependencies>
    </project>

    Après avoir ajouté cette dépendance au pom.xml, exécutez mvn dependency:resolve et vous devriez voir que commons-io fait maintenant partie des dépendances avec le scope test. Nous devons encore faire une chose avant de pouvoir exécuter les tests unitaires de ce projet. Nous devons créer dans le classpath les ressources dont ces tests unitaires ont besoin. Les différents scopes pour les dépendances sont expliqués en détail dans la Section 9.4.1, « Scope de dépendance ».