CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[JAVA] Test Junit échange de caractère.

kiraloup1
kiraloup1
Niveau 1
01 mai 2019 à 14:42:35

Bonjour,

J'essaie de Tester une méthode qui échange les 2 derniers caractères d’un String passer en paramètres.
Mais lorsque je lance le test Junit, j’ai une erreur et aucun de test ne passe pourtant dans mon main la méthode me envoie bien le bon résultat.
Je n’arrive pas à faire marcher ma classe test.

et j'ai cette erreur notamment:
org/opentest4j/AssertionFailedError

Merci pour l’aide.


public static String swap(String mots)
    {
        char[] carr = mots.toCharArray();
        char tmp = carr[mots.length()-1];
        carr[mots.length()-1] = carr[mots.length()-2];
        carr[mots.length()-2] = tmp;
        
        String chaine = String.valueOf(carr);
        
        return  chaine;        
    }

public void testSwap() {
        
        String expectedName = "saltu";
        assertEquals(expectedName,CvdaJunit.swap("salut"));
    }
Bunyan
Bunyan
Niveau 17
01 mai 2019 à 16:48:21

Merci de fournir la stack complète de l'erreur, ainsi que le code afférent à ton problème (au hasard : la classe de TU avec ses annotations).

kiraloup1
kiraloup1
Niveau 1
01 mai 2019 à 19:32:53

Pour la Stack j’ai ça après je sais pas ce que la classe TU désolé.

https://image.noelshack.com/fichiers/2019/18/3/1556731793-junit.png

Bunyan
Bunyan
Niveau 17
01 mai 2019 à 21:03:00

Pour la prochaine fois, je te suggère de faire la simplicité, donc de simplement copier/coller la stacktrace.
C'est plus simple pour toi car tu n'as que deux raccourcis clavier à faire.
C'est plus simple pour nous car nous pouvons surligner les passages qui posent problèmes.
Sans compter que cela rend plus aisé la pérennité du sujet puisque ton image disparaîtra d'ici quelques jours.

Bref, une fois ceci dit, ton erreur n'a rien à voir avec les tests unitaires, et est même assez clair : "ArrayIndexOutOfBound", donc tu tentes d'accéder à une case d'un tableau qui n'existe pas (et à priori, c'est un -1, donc je dirai que tu mots.length fais une taille de 0).

Sous forums
  • Aide à l'achat Mac
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment