Comment tester Struts2 action dans Junit 4?
Il y a un struts2-junit-plugin pour tester Struts2 actions, mais il semble que les tests pour être écrit dans JUnit 3 style, c'est que je ne peux pas utiliser @BeforeClass, @Test etc annotations et ne peut pas utiliser de BDD, de style test des noms comme "shouldDoThisAndThat()". Est-il un moyen de combiner struts2-junit-plugin et JUnit 4-style de tests?
OriginalL'auteur eumust | 2011-04-28
Vous devez vous connecter pour publier un commentaire.
Vous pouvez essayer ceci:
http://glindholm.wordpress.com/2008/06/30/unit-testing-struts-2-actions/
J'ai trouvé qu'il est très utile pour les tests Struts2 actions. Il utilise Mockrunner pour simuler exécute dans un conteneur de servlet, de sorte que vous pouvez développer vos tests dans la manière que vous voulez, y compris l'utilisation de JUnit 4.
OriginalL'auteur Outfast Source
J'ai eu le même problème, voici comment je l'ai résolu, son assez simple de la classe de base.
Dans mon cas, j'utilise hibernate, afin de les laisser sortir de la session/transaction genre de choses si vous ne l'utilisez pas.
Cela vous permet de continuer à utiliser tout le simulacre struts objets, que j'ai trouvé à portée de main. Un test simple affaire suit.
J'ai encore besoin de comprendre comment injecter des offres de ressources (i18n cordes)... je vais être en ajoutant que, pour la classe de base.
Exemple de scénario de test:
Vous pouvez prendre à partir de là je pense.
OriginalL'auteur kcostilow
Pour les autres qui débarquent ici chercher comment tester struts2 actions à l'aide de Junit, voici un exemple de code à l'aide de Struts2.3.12 & Junit 4
J'ai dû séparément intégrer session de la carte, parce que je suis en utilisant getActionProxy() et voici le raison
OriginalL'auteur coding_idiot
Votre classe de test devrait s'étendre StrutsSpringJUnit4TestCase.
OriginalL'auteur loweryjk
J'ai volé un peu de kcostilow et coding_idiot réponses et créé une classe abstraite avec
StrutsJUnit4TestCase
:Ensuite étendu la classe pour créer le test:
OriginalL'auteur LethalLima