Ketika saya ingin menguji sesuatu dalam JavaScript, saya membuka jendela browser baru (kebanyakan Firefox) dan mulai menulis kode di konsol yang disediakan (kebanyakan Firebug).
Namun, ini cenderung sangat membosankan dan lambat. Apakah ada lingkungan, seperti IDE dengan kemampuan eksekusi sendiri misalnya, di mana kita dapat menguji JavaScript?
Panduan: Saya mencari sesuatu seperti jsfiddle, tetapi tidak di browser, dan tidak online. Saya ingin memiliki lingkungan eksekusi yang offline, dan bukan browser.
Yang saya minta adalah untuk memiliki sesuatu seperti Firebug Console sebagai aplikasi terpisah (lebih disukai aplikasi Windows) yang dapat dibuka dengan mengklik dua kali, dan di mana, Anda dapat menulis kode JavaScript dan menekan eksekusi. Itu saja.
Dalam istilah yang lebih sederhana, yang saya inginkan adalah konsol Firebug, tanpa Firefox. Apakah kita memiliki hal seperti itu di pasar?
sumber
Jawaban:
node.js adalah platform javascript sisi-server yang populer.
Ini memiliki REPL yang memungkinkan Anda dengan cepat menguji cuplikan. Ada juga alat lain yang dapat melakukan ini seperti konsol chrome (saya menggunakannya secara pribadi, responsif dan cepat) atau scratchpad firefox6.
Dalam kombinasi dengan zombie atau phantom , yang merupakan browser tanpa kepala, pengujian menjadi halangan. Anda dapat dengan mudah menulis serangkaian tes unit yang berinteraksi dengan situs web Anda.
sumber
Lihatlah JS-Test-Driver oleh Misko Hevery http://code.google.com/p/js-test-driver/wiki/GettingStarted
Javascript adalah bahasa yang diimplementasikan di dalam browser, jadi untuk mengujinya di luar, Anda perlu implementasi yang lengkap.
Tetapi JS-Test-Driver "menangkap" browser, sehingga membuat keseluruhan proses menjadi lebih mudah dan lebih otomatis.
sumber
Selenium mengotomatiskan browser.
Dan htmlUnit menyediakan fungsionalitas pengujian javascript untuk Java.
sumber
Jika Anda hanya ingin bahasa JavaScript , baik Badak atau V8 berfungsi sebagai lingkungan baris perintah, lengkapi dengan REPL. Sebagian besar editor pengembang memungkinkan Anda untuk mengirim konten teks ke proses baris perintah.
Sebaliknya, jika Anda ingin menguji lingkungan seperti browser, lengkap dengan pohon DOM, Anda dapat mencoba env.js , awalnya oleh John Resig (ya, jQuery guy).
sumber
Seperti yang disebutkan orang lain, node.js fantastis untuk menguji Javascript. Saya hanya ingin menambahkan bahwa pengujian di Firebug mungkin memiliki hasil yang tidak terduga. Sebenarnya, input Firebug adalah
eval
ed, yang tidak persis sama dengan mengeksekusi kode seperti itu. Misalnya, semua variabel dibuat tanpa[[DontDelete]]
flag. Posting ini menjelaskan masalah ini secara lebih rinci.sumber
Dalam hal pengujian inti-javascript, Anda dapat mempertimbangkan tentang Badak , proyek Mozilla . Ini jauh lebih ringan daripada nodejs karena Badak adalah implementasi dari bahasa inti saja. Tetapi Rhino tidak akan berguna untuk manipulasi HTML sebagai Firebug.
sumber