สภาพแวดล้อมการทดสอบสำหรับ JavaScript นอกเหนือจากเบราว์เซอร์หรือไม่ [ปิด]


12

เมื่อฉันต้องการทดสอบบางอย่างใน JavaScript ฉันเปิดหน้าต่างเบราว์เซอร์ใหม่ (ส่วนใหญ่เป็น Firefox) และเริ่มเขียนโค้ดในคอนโซลที่ให้มา (ส่วนใหญ่เป็น Firebug)

อย่างไรก็ตามสิ่งนี้มีแนวโน้มที่จะน่าเบื่อและช้ามาก มีสภาพแวดล้อมเช่น IDE ที่มีความสามารถในการดำเนินการด้วยตนเองเช่นที่เราสามารถทดสอบ JavaScript ได้หรือไม่

Guide: ฉันกำลังมองหาบางอย่างเช่น jsfiddle แต่ไม่ใช่ในเบราว์เซอร์และไม่ใช่ออนไลน์ ฉันต้องการมีสภาพแวดล้อมการดำเนินการซึ่งเป็นทั้งแบบออฟไลน์และไม่ใช่เบราว์เซอร์

ทั้งหมดที่ฉันขอคือการมี Firebug Console เป็นแอปพลิเคชั่นแยกต่างหาก (โดยเฉพาะอย่างยิ่งแอพพลิเคชั่น Windows) ซึ่งสามารถเปิดได้โดยดับเบิลคลิกและคุณสามารถเขียนโค้ด JavaScript และกด execute นั่นคือทั้งหมดที่

ในแง่ที่ง่ายกว่าสิ่งที่ฉันต้องการคือคอนโซลของ Firebug โดยไม่มี Firefox เรามีสิ่งนี้ในตลาดหรือไม่?


ฉันพบหน้านี้แล้ว มีเชลล์แบบสแตนด์อะโลนจำนวนมากสำหรับ JavaScript
Saeed Neamati

คำตอบ:


10

node.jsเป็นแพลตฟอร์มจาวาสคริปต์ฝั่งเซิร์ฟเวอร์ยอดนิยม

มันมี REPL ที่ให้คุณทดสอบตัวอย่างได้อย่างรวดเร็ว นอกจากนี้ยังมีเครื่องมืออื่น ๆ ที่สามารถทำได้เช่นคอนโซล Chrome (ฉันใช้เป็นการส่วนตัวตอบสนองและเร็ว) หรือ firefox6 scratchpad

เมื่อใช้ร่วมกับzombieหรือphantomซึ่งเป็นเบราว์เซอร์ที่ไม่มีส่วนหัวการทดสอบจะกลายเป็นสิ่งที่แปลกประหลาด คุณสามารถเขียนชุดการทดสอบหน่วยที่โต้ตอบกับเว็บไซต์ของคุณได้อย่างง่ายดาย


3

ดูที่ JS-Test-Driver โดย Misko Hevery http://code.google.com/p/js-test-driver/wiki/GettingStarted

Javascript เป็นภาษาที่มีการติดตั้งภายในเบราว์เซอร์ดังนั้นเพื่อทดสอบภายนอกคุณจะต้องมีการติดตั้งอย่างสมบูรณ์

แต่ JS-Test-Driver "จับ" เบราว์เซอร์จึงทำให้กระบวนการทั้งหมดง่ายขึ้นและอัตโนมัติขึ้นเล็กน้อย



1

หากคุณต้องการภาษาจาวา JavaScript ทั้งแรดหรือ V8 ทำงานเป็นสภาพแวดล้อมของบรรทัดคำสั่งพร้อมด้วย REPL นักพัฒนาซอฟต์แวร์ส่วนใหญ่อนุญาตให้คุณส่งเนื้อหาข้อความไปยังกระบวนการบรรทัดคำสั่ง

หากในอีกทางหนึ่งคุณต้องการทดสอบสภาพแวดล้อมแบบเบราว์เซอร์ที่สมบูรณ์ด้วยต้นไม้ DOM คุณสามารถลองใช้env.jsโดย John Resig (ใช่แล้วคือ jQuery guy)


ฉันจะบอกว่าห้องสมุดเช่น jsdom เป็นทางเลือกที่ดีกว่าในการ env.js
Raynos

1

อย่างที่คนอื่น ๆ พูดถึง node.js นั้นยอดเยี่ยมสำหรับการทดสอบ Javascript ฉันแค่ต้องการเพิ่มการทดสอบใน Firebug ที่อาจมีผลลัพธ์ที่ไม่คาดคิด อันที่จริงอินพุต Firebug เป็นevaled ซึ่งไม่เหมือนกับการใช้งานโค้ดอย่างที่เป็น ตัวอย่างเช่นตัวแปรทั้งหมดจะถูกสร้างขึ้นโดยไม่มีการ[[DontDelete]]ตั้งค่าสถานะ โพสต์นี้จะอธิบายรายละเอียดเพิ่มเติม


1

เมื่อมาถึงแกนจาวาสคริปต์ทดสอบคุณสามารถพิจารณาเกี่ยวกับแรดเป็นโครงการ Mozilla มันเบากว่า nodejs มากเพราะ Rhino เป็นการใช้งานของภาษาหลักเท่านั้น แต่แรดจะไม่มีประโยชน์สำหรับการจัดการ HTML ในฐานะ Firebug

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.