Comment configurer des chemins vers mes fichiers JavaScript dans le manualspecrunner de Jasmine / Maven AutoGenerated.html?

StackOverflow https://stackoverflow.com/questions/5886594

Question

Je pense que la question en dit la plupart. J'ai un fichier manualspecrunner.html autogener

<jasmineTargetDir>${basedir}/pathForMyWebapp</jasmineTargetDir>

Cependant, tous les liens vers des fichiers JS dans le manualspecrunner.html sont un fichier codé dur: /// références - c'est un peu mental, je veux qu'ils soient simplement les chemins relatifs des fichiers qui sont également dans le webapp, c'est-à-dire

Actuellement, cela me donne ce chemin:

file:///home/username/code/HEAD/pathForMyWebapp/js/yui.js

alors que j'en ai besoin pour avoir le plus simple

/pathForMyWebapp/js/yui.js

J'ai essayé de changer deux autres variables dans le script Maven, mais aucun ne semble avoir l'effet souhaité, aucune de ces options de configuration ne fait ce dont j'ai besoin, la seconde n'ayant apparemment aucun effet:

<jsSrcDir>/pathForMyWebapp</jsSrcDir>

ni

<jsTestSrcDir>/pathForMyWebapp</jsTestSrcDir>

J'ai examiné la documentation, mais je pense que je dois manquer quelque chose (plus, plus de notes sur divers paramètres de configuration répertoriés dans https://github.com/searls/jasmine-maven-plugin/blob/master/src/main/java/com/github/searls/jasmine/abstractjasminemojo.java sont censés faire seraient utiles pour que je puisse m'entraîner si je le fais mal ou si ce n'est pas possible!)

Aucune suggestion?

PS J'ai changé certains des noms de chemin car ils ont des informations sensibles, alors veuillez ignorer leur bizarrerie!

Était-ce utile?

La solution

Je pense que je comprends la source de votre confusion. On dirait que vous essayez de diriger la cible du jasmin-maven-plugin vers un répertoire à l'intérieur Le fichier .war emballé * de votre projet afin que vous puissiez exécuter vos spécifications par rapport au code après avoir été déployé sur un serveur, est-ce exact?

Malheureusement, le plugin n'a pas été conçu avec cette utilisation à l'esprit. La jasmineTargetDir Le répertoire est généralement laissé à sa valeur par défaut de target/jasmine et n'était pas destiné à être regroupé avec votre application (elle est analogue à la target/surefire-reports Généré par Maven-Surefire-Plugin pour les tests unitaires Java). Donc la raison pour laquelle le script marque dans ManualSpecRunner.html Le point vers des emplacements non valides est dû au fait que ce fichier est généré afin d'être exécuté à partir du système de fichiers local dans un navigateur de la station de travail qui construit le projet (pour faciliter le TDD).

Tout cela pour dire, si je lis votre intention correctement, je pense que ce serait une fonctionnalité intéressante pour créer un troisième coureur de spécifications qui pourrait être déployé avec l'application et exécuté à distance. (Surtout si les spécifications du jasmin du projet sont fonctionnelles / intégration par opposition aux tests unitaires isolés.) Malheureusement, ce n'est pas encore quelque chose que le projet fait.

J'ai peur que pour l'instant, si vous aviez besoin de faire passer les tests de jasmin et de les exécuter sur le serveur déployé, vous devrez copier ManualSpecRunner.html Et le jasmin dans votre src/main/webapp, corriger les références de balise de script, puis le maintenir manuellement lorsque des fichiers sont ajoutés et supprimés.

Avoir du sens?

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top