2010-02-27 3 views
1

Je suis constamment en train de réécrire les mêmes lignes de code dans la console Firebug pour tester mon application. L'application utilise tellement l'interface utilisateur que je ne pense pas que les tests unitaires soient la solution ici? Comment pourrais-je exécuter rapidement des lignes de code JavaScript sans les taper à plusieurs reprises?Développement JavaScript - lignes de marquage de code?

Répondre

3

Vous pouvez utiliser bookmarklets faire exactement ce que vous parlez: L'exécution de JavaScript dans le contexte de la fenêtre en cours d'un signet. Les signets doivent être assez courts et peuvent être pénibles à écrire (parce qu'ils sont des URL javascript, et doivent donc être codés en URL), mais vous pouvez utiliser un bookmarklet pour amorcer un script externe (écrit normalement) dans la page et alors appelez simplement des fonctions dans ce script, ce qui minimise la quantité de code bookmarklet que vous devez écrire. Plus sur le faire (y compris un exemple) dans this answer ici sur SO.

Mais en termes de tests: On peut supposer que l'interface utilisateur est étayée par du code logique, cela vaut la peine d'avoir des tests unitaires pour cela. Il existe également des cadres de tests unitaires spécifiques aux applications Web que vous pouvez utiliser pour tester les fonctionnalités de l'interface utilisateur. Voir this SO question/answer pour plus. Celui que vous semblez entendre le plus en ce moment est Selenium. Un couple d'autres ont mentionné GreaseMonkey, et dans FF c'est certainement une option. La bonne chose à propos des bookmarklets, c'est qu'ils fonctionnent dans un large éventail de navigateurs.

+2

Vous pouvez faire quelque chose comme J .Resig fait pour profiler le code JS (http://ejohn.org/blog/deep-profiling-jquery-apps). De cette façon, vous pouvez exécuter tous les tests dont vous avez besoin automatiquement ou en utilisant la fonction de déclenchement simple, que vous pouvez utiliser comme un bookmarklet. – NilColor

+0

Informations très utiles et rapides! – Tower

+0

@Tower: Cool, heureux que cela a aidé. –

1

Pour exécuter le code JavaScript, vous devez le taper. Ou enregistrez-le quelque part.

+0

Oui, mais vous pouvez l'enregistrer * dans un signet *: http://stackoverflow.com/questions/2347353/javascript-development-bookmarking-lines-of-code/2347377#2347377 –