Avatar billede margitbork Nybegynder
21. marts 2006 - 21:35 Der er 4 kommentarer og
1 løsning

jUnit, hvorfor virker min testSuite ikke?

Hej
Jeg har en applikation hvor de enkelte moduler testes med jUnit. Til hver modul har jeg en testSuite og den virker fint. Jeg vil så have en testsuite der samler alle de enkelte modulers testSuiter, men jeg kan ikke få det til at virke.

Jeg har følgende kode:
public class EcwTestSuite extends TestSuite
{
  //
}

Denne her virker fint:

public class ClientlogicinterfaceTestSuite extends EcwTestSuite
{


  public static Test suite()
  {
      EcwTestSuite suite = new ClientlogicinterfaceTestSuite();
      suite.addTest(new ExecuteSendFacadeTest());
      suite.addTest(new ExecuteRecieveFacadeTest());
      return suite;
  }



  public static void main(String[] args)
  {
      EcwTestSuite testSuite = (EcwTestSuite) suite();


      TestRunner.run(testSuite);

  }
}


// det her virker ikke, men hvordan skal jeg så skrive ?

public class ApplicationTestSuite extends EcwTestSuite
{


  public static Test suite()
  {
      EcwTestSuite suite = new ApplicationTestSuite();

      suite.addTestSuite(ClientlogicinterfaceTestSuite.class);

      return suite;
  }



  public static void main(String[] args)
  {
      EcwTestSuite testSuite = (EcwTestSuite) suite();


      TestRunner.run(testSuite);

  }


}

Jeg får en fejl der siger:junit.framework.AssertionFailedError: No tests found in com.ibm.dk.ecs.clientlogicfacade.unittest.ClientlogicinterfaceTestSuite
    at com.intellij.rt.execution.junit2.IdeaJUnitAgent.doRun(IdeaJUnitAgent.java:57)
    at com.intellij.rt.execution.junit.TextTestRunner2.startRunnerWithArgs(TextTestRunner2.java:23)
    at com.intellij.rt.execution.junit2.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:97)
    at com.intellij.rt.execution.junit2.JUnitStarter.main(JUnitStarter.java:31)
    at com.intellij.rt.execution.junit2.JUnitStarter.main(JUnitStarter.java:31)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:78)


Håber der er noget hjælp til mig
Marigt
Avatar billede arne_v Ekspert
21. marts 2006 - 23:41 #1
JUnit test metoder skal hedde testXxxxx
Avatar billede margitbork Nybegynder
22. marts 2006 - 07:41 #2
Aha, det prøver jeg lige...
Avatar billede margitbork Nybegynder
22. marts 2006 - 07:46 #3
mine test metoder hedder testXxxxx, men skal mine test klasser også heddet TestXxxx ?
Avatar billede arne_v Ekspert
23. marts 2006 - 05:45 #4
det gør man ofte men det er ikke nødvendigt
Avatar billede margitbork Nybegynder
23. marts 2006 - 07:39 #5
Nå jeg har selv fundet fejlen, Jeg skulle ikke skrive
suite.addTestSuite(ClientlogicinterfaceTestSuite.class);
men derimod
suite.addTest(ClientlogicinterfaceTestSuite.suite());
Så nu virker det.
Margit
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester