2014-08-28 5 views
13

Quando sto provando a eseguire la suite di test, ottengo questa eccezione. Stiamo usando il progetto Maven qui e ho finito con l'aggiornamento, la pulizia, la reinstallazione di testNG e poi ho importato i progetti Maven, ma poi sto ottenendo la stessa eccezione. Si prega di suggerire tutti i modi che mi mancano qui.Errore: org.testng.TestNGException: Impossibile trovare la classe in classpath: EmpClass

console Errore:

org.testng.TestNGException: 
Cannot find class in classpath: EmpClass 

at org.testng.xml.XmlClass.loadClass(XmlClass.java:81) 
at org.testng.xml.XmlClass.init(XmlClass.java:73) 
at org.testng.xml.XmlClass.<init>(XmlClass.java:59) 
at org.testng.xml.TestNGContentHandler.startElement(TestNGContentHandler.java:543) 
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:509) 
at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:182) 
at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.emptyElement(XMLDTDValidator.java:766) 
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:1350) 
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2778) 
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606) 
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510) 
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848) 
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777) 
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141) 
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213) 
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:649) 
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:333) 
at javax.xml.parsers.SAXParser.parse(SAXParser.java:195) 
at org.testng.xml.XMLParser.parse(XMLParser.java:39) 
at org.testng.xml.SuiteXmlParser.parse(SuiteXmlParser.java:17) 
at org.testng.xml.SuiteXmlParser.parse(SuiteXmlParser.java:10) 
at org.testng.xml.Parser.parse(Parser.java:168) 
at org.testng.TestNG.initializeSuitesAndJarFile(TestNG.java:311) 
at org.testng.remote.RemoteTestNG.run(RemoteTestNG.java:88) 
at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:204) 
at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:175) 
+0

Raccontaci come hai fatto a configurare i casi di test. Non possiamo fare a meno di osservare lo stacktrace delle eccezioni .... –

+0

Configuro i casi di test prendendo l'aiuto di questo link http://selftechy.com/2012/01/09/setting-up-testng-with-eclipse – user2991323

+0

1) Creo un nuovo progetto java 2) Scaricato l'archivio TestNG (file testng-6.8.jar) 3) Configura il percorso di generazione per testng-6.8.jar – user2991323

risposta

6

È necessario modificare il file XML Runner test. Vedere questo esempio:

<test name="Employees Test"> 
       <classes> 
         <class name="packagename.classname"> 
         </class> 
       </classes> 
</test> 

In <class name="packagename.classname"> fila è necessario immettere il nome del pacchetto test poi nome della classe che si desidera eseguire.

Grazie e vi auguro tutto il meglio.

+0

Questo ha funzionato per me, grazie! –

13

Ho anche avuto la stessa eccezione:

ho provato le seguenti operazioni:

  1. In Eclipse> Progetto> Clean. (L'eccezione è rimasto)

  2. Ho corso un altro progetto (Il testng.xml ha funzionato con successo)

Dopo l'esecuzione di un altro progetto, ho eseguito il progetto in cui mi è stato sempre l'eccezione, e per fortuna ha funzionato per me, senza errori.

+0

Era di fronte allo stesso errore. La pulizia del progetto ha funzionato per me. – somnathchakrabarti

+0

Dopo ogni esecuzione del test TestNG, ho dovuto eseguire un'installazione mvn clean e quindi rieseguire il test. Altrimenti, l'errore persiste. – somnathchakrabarti

0

Avevo un problema simile e il progetto aveva alcuni errori di compilazione. Ho fatto sudo -R 777 per il progetto e poi ho pulito il mio progetto. Dopo che ha funzionato bene.

Spero che aiuti.

0

Ho avuto lo stesso errore quando ho provato a eseguire i miei test in un progetto JSF.

Sto usando Eclipse IDE (kepler). Quindi, ho fatto "project> clean" e poi ho eseguito di nuovo i test dello stesso progetto.

Ha funzionato!

0

Nota: è necessario specificare il nome della classe insieme ai pacchetti come indicato di seguito.

<suite name="testNGLearning"> 
    <test name="simpleTest"> 
     <classes> 
      <class name="testngTests.TestNGSimpleTest" /> 
      <class name="testngTests.TestMessageUtil" /> 
     </classes> 
    </test> 
</suite> 
0

Ha funzionato di nuovo l'IDE. La soluzione è abbastanza divertente - e anche una reinstallazione, e l'eliminazione dell'IDE non lo aggiusta su Windows. Quello che devi fare in questo caso, è andare alle configurazioni di esecuzione di testNG e cancellarle tutte. Si tratta dell'errore del percorso di classe XML TestNG su Windows OS. Sto usando la suite di strumenti di primavera 3.6.4.

Assicurati di eliminare tutte le configurazioni, assicurati che il progetto possa essere compilato e, se non ci sono problemi, il test dovrebbe essere eseguito ora.

saluti -Anthony Toorie

7

ho affrontato il problema simile sull'importazione Maven con il progetto TestNG.Questo è stato risolto mediante la conversione di nuovo nel progetto TestNG da

right click on eclipse project > TestNG > Convert to TestNG

e sostituendo il file esistente testng.xml con la nuova creazione. Pulire e aggiornare il progetto Maven con mvn install

Nota: "" prendere di backup dei testng.xml

0

In testng.xml di file, rimuoverlo dal nome della classe "" del tag se non si utilizzano i pacchetti.

0

include il nome del pacchetto con classe. Rimuoverà il tuo nome. Ho anche avuto lo stesso problema, ma aggiungendo il nome del pacchetto con classe risolto questo problema.

0

Per me il problema era molto strano.
Ho un file testng.xml nella radice del mio progetto Eclipse. Quando ho cambiato il file tramite Eclipse, non stava cambiando il file testng.xml nella mia directory.

scopre che ha fatto una copia della cartella nell'area di lavoro eclisse ..

Spero che questo aiuti qualcuno fuori

4

Vai a Progetto> Build Path> Configura Build Path> Biblioteche> Rimuovi le librerie di errore

Dopo l'aggiornamento del progetto ed eseguire nuovamente il programma.

0

A mio parere se src ha test/java/folders, quindi nel percorso di build out dovrebbe essere come target/test-classes.

Se src ha le cartelle principale/java/quindi nel percorso di creazione percorso dovrebbe essere come destinazione/classi.

0

Mi sono imbattuto nello stesso problema di cui sopra oggi. ** l'impostazione del percorso di classe di nuovo in eclissi ** ha risolto il problema.

0

Non ho avuto problemi con questo fino a poco tempo fa.

Ora ho dovuto spostare il file di test xml della suite nella radice del progetto che stavo testando.

Può darsi che ci sia un'impostazione da puntare alle classi che sto testando, ma non l'ho trovato.

0

Per me, il problema era perché ho escluso il test dalla compilazione in POM. Il mio pom.xml si presentava così:

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-compiler-plugin</artifactId> 
    <version>3.5.1</version> 
    <configuration> 
     <source>1.8</source> 
     <target>1.8</target> 
     <testExcludes> 
      <exclude>com/mycompany/app/AppTest.java</exclude> 
     </testExcludes> 
    </configuration> 
</plugin> 

Dopo aver rimosso il <exclude>, ero in grado di eseguire i test in AppTest.java di nuovo.

0

Nel mio caso ho importato progetto maven come progetto esistente predefinito in eclipse.Dopo averlo importato come progetto maven. Ciò ha funzionato per me.

0

I miei 2 centesimi sul problema: stavo vivendo lo stesso problema, mentre una parte del mio percorso era in cirillico. Quindi controlla il percorso del tuo progetto per caratteri speciali.Una volta che ho rimosso questo, il problema è stato risolto

1

Progetto >> Pulire e Maven >> Aggiornamento del progetto ha lavorato per me

0

Questo problema può essere risolto con l'aggiunta di pacchetto TestNG.class al pacchetto OnlineStore come di seguito

  1. Fase 1: Costruire Percorso> Configura Build Path> Java Build Path> selezionare "progetto" scheda
  2. Fase 2: Fare clic su "aggiungi" e selezionare il progetto con contiene la fonte TestNG.
  3. Fase 3 Selezionare Esegui TestNG.xml come "TestNG Suite"