2010-03-02 7 views
5

J'ai beaucoup de tests JUnit, qui sont tous créés par l'assistant de Netbeans (donc rien de personnalisé). Je peux exécuter chaque test manuellement en faisant "Fichier de test" (Ctrl + F6). Mais lorsque j'utilise "Exécuter -> Projet de test", le message "Aucun test exécuté" s'affiche.Netbeans: "Exécuter -> Projet de test" ne fait rien

Dois-je enregistrer chaque test JUnit quelque part?
Ou quel pourrait être le problème ici?

Avant cela, suivant apparaît dans la fenêtre de sortie:

init: 
Deleting: /MY-WORK/my.data.adv/build/built-jar.properties 
deps-jar: 
Updating property file: /MY-WORK/my.data.adv/build/built-jar.properties 
my.commons.init: 
my.commons.deps-jar: 
Updating property file: /MY-WORK/my.data.adv/build/built-jar.properties 
my.commons.compile: 
Copy libraries to /MY-WORK/my.commons/dist/lib. 
my.commons.jar: 
my.data.init: 
my.data.deps-jar: 
Updating property file: /MY-WORK/my.data.adv/build/built-jar.properties 
my.data.compile: 
Copy libraries to /MY-WORK/my.data/dist/lib. 
my.data.jar: 
compile: 
compile-test: 
test-report: 
test: 
BUILD SUCCESSFUL (total time: 0 seconds) 

EDIT

  • Le type de projet est "bibliothèque de classes", pas configurations personnalisées en build.xml sont utilisés.

  • Peut-être est-il pertinent de mentionner que le projet est ancien (créé avec une version de Netbeans antérieure à 6.7).

+0

Quel type de projet exactement? (Bureau, Web, autre) –

+0

Comment avez-vous nommé les fichiers de classe et où avez-vous mis les fichiers? – Karussell

+0

Tout est ** classique **: les tests JUnit se trouvent dans le dossier du paquet "test" (étiquette "Test Packages"). Les tests JUnit sont dans un paquet, qui a le même nom que celui des classes à tester. –

Répondre

8

Depuis que je soumettais l'idée correcte nécessaire pour générer une réponse, je dis que je devrais ajouter un peu de valeur pour elle ...

Si vous Créez un projet Java-> Bibliothèque de classes avec NetBeans, vous pouvez créer un test unitaire associé à chacune des classes dans les paquets sources de votre projet. Vous avez juste besoin de faire un clic droit sur la classe dans l'explorateur de projets.

Si vous créez le « premier test » pour un projet, l'IDE vous permet de choisir entre 3 et JUnit JUnit 4.

Lorsque vous créez un test pour abcNewClass, NetBeans vous permettra de nommer le test tout ce que vous voulez et mettre le test dans n'importe quel paquet que vous voulez ... la plupart du temps, vous ne voulez pas changer les valeurs par défaut qui apparaissent dans la boîte de dialogue (abcNewClassTest). Dans les versions de NetBeans 6.9, un avertissement apparaîtra si le nom du test que vous êtes sur le point de créer n'a pas "Test" comme suffixe.

Si vous créez des noms de classe de test qui ne se terminent pas par "Test", vous pouvez toujours les exécuter lorsque vous utilisez l'action Test sur un projet. Vous avez juste à les déclencher à partir d'une classe de test «normale».

6

Merci à l'utilisateur vkraemer!

La solution est la suivante: Seuls les tests JUnit sont exécutés lorsque leur nom se termine par Test.

Section de build-impl.xml prouve:

<target depends="init,compile-test,-pre-test-run" 
    if="have.tests" name="-do-test-run"> 
    <j2seproject3:junit testincludes="**/*Test.java"/> 
</target> 
0

Mes tests travaillaient alors ils se sont arrêtés, juste afficher:.

Aucun test exécuté (s) 0.0

Le problème était un espace supplémentaire dans le VM Options: après la -D.Cela a causé des problèmes:

-D mysetting.home=something 

et ce qu'il fixe:

-Dmysetting.home=something 
1

Si vous utilisez Maven, vous pouvez vérifier votre plugin Surefire sur pom.xml

... 
<plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-surefire-plugin</artifactId> 
      <version>2.11</version> 
      <configuration> 
       <includes> 
        <include>**/*Test.java</include>       
       </includes> 
       <systemPropertyVariables> 
        <java.util.logging.config.file>src/test/resources/logging.properties</java.util.logging.config.file> 
       </systemPropertyVariables> 
      </configuration> 
     </plugin> 


    ... 
Questions connexes