IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

Comment enlever les espaces du stacktrace ?


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Battosaiii
    Invité(e)
    Par défaut Comment enlever les espaces du stacktrace ?
    Bonjour,

    Comment comparer 1 string long avec un String. J'aimerais comparer le résultat attendu du stacktrace avec le stacktrace en question. Les 2 sont identique lorsque je debug. Sauf qu'il y a des problemes avec les espaces. Comment supprimer les espaces d'un String.


    Comment faire le test suivant quelque soit les espaces ?


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
     
    Assert.assertEquals("java.lang.NullPointerException at java.io.File.<init>(Unknown Source)" +
    	"at fr.aphp.mediweb.batch.util.StackTraceUtilTest.testGetStackTrace(StackTraceUtilTest.java:13)" +
    	"at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)" +
    	"at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)" +
    	"at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)" +
    	"at java.lang.reflect.Method.invoke(Unknown Source)" +
    	"at junit.framework.TestCase.runTest(TestCase.java:154)" +
    	"at junit.framework.TestCase.runBare(TestCase.java:127)" +
     	"at junit.framework.TestResult$1.protect(TestResult.java:106)" +
    	"at junit.framework.TestResult.runProtected(TestResult.java:124)" +
    	"at junit.framework.TestResult.run(TestResult.java:109)" +
    	"at junit.framework.TestCase.run(TestCase.java:118)" +
    	"at junit.framework.TestSuite.runTest(TestSuite.java:208)" +
    	"at junit.framework.TestSuite.run(TestSuite.java:203)" +
    	"at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)" +
    	"at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)" +
    	"at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)" +
    	"at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)" +
    	"at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)" +
    	"at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)"
    					,StackTraceUtil.getStackTrace(ex).trim());













    Merci

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    c'est pas comme ça qu'on teste si une méthode envoie bien une exception. Ce test ne pourra jamasi décement marcher.

    Pour tester une exception, le plus simple est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    try{
      laMethodeQuiDoitDeconner()
      fail("On aurait du avoir une exception");
    } catch (NullPointerException e){
       // ok
    }

  3. #3
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Par défaut
    Ce test est une assez mauvaise idée je pense.

    Tu devrais juste tester la présence d'une exception via un "try/catch", mais pas la stacktrace.

    Dans ton test, une partie de la stacktrace mentionne directement le lanceur de tests d'Eclipse. Même en rendant ton test valide, celui-ci ne fonctionnerait que pour un lancement depuis Eclipse, mais pas via Cobertura ou autre… ce qui est assez gênant.
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

  4. #4
    Battosaiii
    Invité(e)
    Par défaut
    Mon test n'est pas sur l'existence de l'exception. Mon test était sur le string lui meme. Je voulais tester que le stackstrace existe. Merci de ces réponses. J'ai fait des tests simples sur la non nullité du string et j'ai vérifié que le string n'est pas vide.

  5. #5
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Je serais curieux de voir un exemple d'exception qui n'a pas de stacktrace.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Membre Expert
    Inscrit en
    Août 2009
    Messages
    1 073
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 1 073
    Par défaut


    Par pure curiosité, quel est l'objectif de la manœuvre ?

  7. #7
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Je dirais après reflection, tester que StackTraceUtil.getStackTrace(ex) se comporte comme prévu, ce qui, dans ce cas, est un test normal. En plus de la non nullité, on pourrais tester qu'elle contient bien "NullPointerException"

Discussions similaires

  1. enlever les espaces
    Par moimoi_1 dans le forum Langage
    Réponses: 3
    Dernier message: 09/08/2005, 09h57
  2. Enlever les espaces inutiles d'un AnsiString
    Par jamesb dans le forum C++Builder
    Réponses: 2
    Dernier message: 27/01/2005, 12h40
  3. [DBGRID] Comment enlever les ascenseurs H et V
    Par kase74 dans le forum Bases de données
    Réponses: 6
    Dernier message: 16/09/2004, 18h33
  4. Enlever les espaces
    Par Claythest dans le forum Langage
    Réponses: 6
    Dernier message: 03/06/2003, 14h43
  5. Comment gérer les espaces blancs?
    Par Lambo dans le forum XML/XSL et SOAP
    Réponses: 10
    Dernier message: 16/05/2003, 09h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo