J'essaie d'exécuter un test très simple à l'aide de TestNG, mais je reçois ce message d'erreur. J'ai essayé de lire les réponses précédentes, mais cela ne fonctionne pas pour moi. Je serais heureux si quelqu'un pouvait m'aider, car je ne suis qu'un débutant dans TestNG. C'est le message d'erreur:
Exception in thread "main" Java.lang.NoClassDefFoundError: com/beust/jcommander/ParameterException
at Java.lang.Class.getDeclaredMethods0(Native Method)
at Java.lang.Class.privateGetDeclaredMethods(Unknown Source)
at Java.lang.Class.privateGetMethodRecursive(Unknown Source)
at Java.lang.Class.getMethod0(Unknown Source)
at Java.lang.Class.getMethod(Unknown Source)
at Sun.launcher.LauncherHelper.validateMainClass(Unknown Source)
at Sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)
Caused by: Java.lang.ClassNotFoundException: com.beust.jcommander.ParameterException
at Java.net.URLClassLoader.findClass(Unknown Source)
at Java.lang.ClassLoader.loadClass(Unknown Source)
at Sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at Java.lang.ClassLoader.loadClass(Unknown Source)
... 7 more
Oui, il y a un issue avec testNG
exécuté sur Eclipse. À partir de ce message, vous pouvez essayer une solution de contournement pour corriger votre erreur en ajoutant le fichier jcommander jar dans votre chemin de génération, puis exécutez votre suite testNG
à partir d'Eclipse.
Si vous voulez utiliser la commande Invite ou terminal, voici comment procéder sous MAC -
Java -cp "PATH/TO/TESTNG.jar:PATH/TO/jcommander-1.7.jar" org.testng.TestNG testng.xml
De la même manière, remplacez votre chemin pour Windows et votre suite de tests s'exécutera sans erreur en utilisant la commande Invite.
Voir https://github.com/cbeust/testng-Eclipse/issues/140 .
Ajoutez jcommdar.jar au classpath, puis exécutez: Java -cp "C:\TestNG\testng.jar; C:\TestNG\jcommander.jar" org.testng.TestNG testng.xml
Pour résoudre ce problème, nous devons télécharger le fichier jc de jcommander1.7 . Pour télécharger le fichier jar, visitez l’URL ci-dessous et obtenez le fichier jcommander1.7.
http://www.Java2s.com/Code/Jar/j/Downloadjcommander17jar.htm
Processus d'implémentation du fichier jc de jcommander1.7
Faites un clic droit sur le projet-> Propriétés-> cliquez sur les bibliothèques-> cliquez sur Ajouter des fichiers JAR externes -> accédez à l'emplacement où le fichier jcommander1.7 jar est téléchargé.
et exécutez votre script, votre script s'exécutera maintenant avec succès.
Ajoutez jcommdar.jar
à classpath
puis exécutez:
Java -cp "C:\TestNG\testng.jar;C:\TestNG\jcommander.jar" org.testng.TestNG testng.xml
C'est vraiment aidé pour moi.
J'ai eu la même erreur lors de l'exécution de mon testng.xml. J'ai remplacé le fichier jar du serveur Selenium qui était inclus (chemin de génération) par un utilisateur local de son chemin local. Copiez les fichiers jar dans le dossier du projet (lib) et incluez-les dans votre projet. Cela a fonctionné pour moi.