Kiedy chcę przetestować coś w JavaScript, otwieram nowe okno przeglądarki (głównie Firefox) i zaczynam pisać kod w dostarczonej konsoli (głównie Firebug).
Jednak jest to zwykle bardzo nużące i powolne. Czy istnieje środowisko, na przykład IDE z możliwością samodzielnego wykonywania, w którym możemy przetestować JavaScript?
Przewodnik: szukam czegoś takiego jak jsfiddle, ale nie w przeglądarce i nie online. Chciałbym mieć środowisko wykonawcze, które jest zarówno offline, jak i nie jest przeglądarką.
Proszę tylko o coś w rodzaju Firebug Console jako osobnej aplikacji (najlepiej aplikacji Windows), którą można otworzyć przez dwukrotne kliknięcie, w której można napisać kod JavaScript i uruchomić. To wszystko.
Mówiąc prościej, wszystko czego chcę to konsola Firebug, bez Firefoksa. Czy mamy coś takiego na rynku?
źródło
Odpowiedzi:
node.js to popularna platforma javascript po stronie serwera.
Ma REPL, który pozwala szybko testować fragmenty. Istnieją również inne narzędzia, które mogą to zrobić, takie jak konsola chrome (używam jej osobiście, szybko i szybko) lub scratchpad Firefoksa 6.
W połączeniu z zombie lub fantomem , które są przeglądarkami bezgłowymi, testowanie staje się prostsze. Możesz łatwo napisać zestaw testów jednostkowych, które współdziałają z twoją witryną.
źródło
Zobacz sterownik JS-Test-Driver autorstwa Misko Hevery http://code.google.com/p/js-test-driver/wiki/GettingStarted
JavaScript jest językiem implementowanym w przeglądarkach, więc aby przetestować go na zewnątrz, potrzebna jest jego pełna implementacja.
Ale JS-Test-Driver „przechwytuje” przeglądarkę, dzięki czemu cały proces jest nieco łatwiejszy i bardziej automatyczny.
źródło
Selenium automatyzuje przeglądarki.
A htmlUnit zapewnia funkcjonalność testowania javascript dla Java.
źródło
Jeśli chcesz tylko języka JavaScript , Rhino lub V8 działają jako środowiska wiersza poleceń, wraz z REPL. Większość edytorów programistów umożliwia wysyłanie treści tekstowych do procesu wiersza polecenia.
Z drugiej strony, jeśli chcesz przetestować środowisko podobne do przeglądarki, wraz z drzewem DOM, możesz wypróbować env.js , oryginalnie autorstwa Johna Resiga (tak, facet jQuery).
źródło
Jak wspomnieli inni, node.js jest fantastyczny do testowania Javascript. Chcę tylko dodać, że testy w Firebug mogą mieć nieoczekiwane wyniki. W rzeczywistości wejście Firebug jest
eval
edytowane, co nie jest dokładnie tym samym, co wykonanie kodu. Na przykład wszystkie zmienne są tworzone bez[[DontDelete]]
flagi. Ten post wyjaśnia sprawę bardziej szczegółowo.źródło
Jeśli chodzi o testy rdzenia javascript, możesz rozważyć Rhino , projekt Mozilli . Jest znacznie lżejszy niż nodejs, ponieważ Rhino jest implementacją tylko języka podstawowego. Ale Rhino nie przyda się do manipulacji HTML jako Firebug.
źródło