Sto usando formica e TestNG 6.1.1 e ho eseguito i miei test solo bene ieri. Oggi quando provo a eseguire i test ottengo un NoClassDefFoundError che coinvolge com/beust/jcommander/ParamException. Ecco l'output:All'improvviso non è possibile eseguire test TestNG da ant ([testng] Causato da: java.lang.ClassNotFoundException: com.beust.jcommander.ParameterException)
[copy] Copying 1 file to /Users/djohnson/src/webapp/components/build/tmp
[testng] Exception in thread "main" java.lang.NoClassDefFoundError: com/beust/jcommander/ParameterException
[testng] Caused by: java.lang.ClassNotFoundException: com.beust.jcommander.ParameterException
[testng] at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
[testng] at java.security.AccessController.doPrivileged(Native Method)
[testng] at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
[testng] at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
[testng] at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
[testng] at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
[testng] The tests failed.
Ecco il file XML che sto usando:
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="Single Method Suite">
<test name="Single Method Test">
<classes>
<class name="DhcpTest">
<methods>
<exclude name=".*" />
<include name="setGetEnabledTest" />
</methods>
</class>
</classes>
</test>
</suite>
Ho anche specificato il percorso completo per la classe senza fortuna. Ho controllato il classpath e tutto sembra a posto, qualcuno ha qualche idea su questo?
Va bene, così ho aggiunto jcommander-1.17.jar al classpath, e ho ancora ottenere lo stesso errore. – anotherdjohnson
Ora che ho pubblicato questo messaggio per tutto il mondo, ho scoperto che jcommander non si trovava effettivamente nel classpath. Ero sicuro di averlo visto lì, ma era sicuro che mancasse. Ora non riesce a trovare il test, non so perché, perché ho triplicato il classpath, ed è sicuramente lì. – anotherdjohnson