2010-08-31 4 views
18

मैं जावास्क्रिप्ट के साथ काम करने के लिए काफी नया हूं।स्थानीय मशीन पर जावास्क्रिप्ट में दर्द रहित ढंग से विकसित करने के सर्वोत्तम तरीके

अधिकांश भाषाओं में आप अपनी मशीन पर कोड को स्थानीय रूप से चला सकते हैं। मैंने जो देखा है, उससे जेएस में आप आम तौर पर ब्राउज़र के माध्यम से इसका इस्तेमाल करते हैं, और इसलिए मैं अपने कोड को ब्राउज़र में इसके प्रभाव देखने के लिए अपलोड कर रहा हूं। यह बहुत थकाऊ साबित हुआ है। साथ ही, अगर मैं एक त्रुटि करता हूं, ऐसा लगता है कि मेरे जेएस/JQuery मुझे कुछ भी उपयोगी त्रुटि देने के बजाय कुछ भी नहीं करेगा, संदेश, जो इसे कोड में दर्दनाक रूप से धीमा कर रहा है।

क्या चलाने का कोई तरीका है जेएस स्थानीय रूप से यह देखने के लिए कि यह काम कर रहा है जैसे मैं जाता हूं? और फिर जब मैं अधिकतर करूँगा तो इसे केवल वेब पर अपलोड करें? ऐसा करने के लिए मेरे लिए क्या तरीके हैं? जावास्क्रिप्ट को स्थानीय रूप से परीक्षण करने के लिए मेरे लिए वहां कौन से तरीके हैं? मान लें कि मेरे पास JAML है जो <p>HI</p के रूप में प्रस्तुत करना चाहिए>, मैं इसे यूनिट परीक्षण में स्थानीय रूप से कैसे चला सकता हूं?

मदद के लिए धन्यवाद, एलेक्स

संपादित करें:

सभी महान सुझाव के लिए धन्यवाद। मुझे थोड़ा समय लेना होगा और यह देखने के लिए कि मेरी स्थिति में कौन सा सबसे अच्छा मेरी मदद करेगा।

उत्तर

4

आप जेएसबी डीबग करने के लिए फ़ायरफ़ॉक्स के साथ Firebug का उपयोग कर सकते हैं, और Google क्रोम में डिबगर अंतर्निहित है (टूल्स -> डेवलपर टूल्स मेनू का उपयोग करें)।

+2

मैं मानता हूँ चलाने के लिए नेविगेट कर सकते हैं, Firebug जाने का रास्ता है। – fastcodejava

+2

जहां तक ​​मैं आपको जानता हूं ** फायरबग के स्टॉक संस्करण के साथ यूनिट परीक्षण ** नहीं कर सकता है जो ओपी पूछ रहा है। – HoLyVieR

+0

"क्या यह देखने के लिए स्थानीय रूप से जेएस चलाने का कोई तरीका है कि यह काम कर रहा है जैसे मैं जाता हूं?" - हाँ फायरबग/क्रोम के साथ। वह यूनिट परीक्षण के बारे में भी पूछता है, मैंने इस सवाल के जवाब का जवाब नहीं दिया, और न ही मैंने दावा किया। – Grokys

1

आप अपने ब्राउज़र में अपनी मशीन पर स्थानीय फ़ाइल से जावास्क्रिप्ट चला सकते हैं, ताकि आप अपलोड करने के चरण को छोड़ सकें।

इसके अलावा, मैं जावास्क्रिप्ट के विकास के लिए फ़ायरफ़ॉक्स/Firebug कॉम्बो का उपयोग करने की सलाह दूंगा क्योंकि यह बहुत आसान होगा, विशेष रूप से उस हिस्से के लिए जिसका आपने उल्लेख किया है कि आपके कोड में क्या गलत हो रहा है।

1

भले ही आप अपना जावास्क्रिप्ट अपलोड करते हैं, जैसे ही आप वेबपेज पर जाते हैं, जैसे ही आप इसे होस्ट करते हैं। इसके रन क्लाइंट पक्ष हमेशा। तो स्थानीय लोगों के साथ चिपके रहें और फायरबग का उपयोग करें जैसा कि अन्य ने कहा है। Google का डेवलपर टूल भी काफी अच्छा है।

6

चूंकि आप jQuery का उपयोग कर रहे हैं, मुझे लगता है कि आप वास्तव में अपने पृष्ठ पर विभिन्न तत्वों का उपयोग करना चाहते हैं। तो आपके विशिष्ट विकास पर्यावरण के आधार पर, इसे हर बार अपलोड करना शायद वैसे भी जाने का तरीका है। यदि आप अपनी स्थानीय मशीन पर एक देव वातावरण स्थापित कर सकते हैं (हमेशा संभव नहीं) तो उसके साथ जाएं।

आपके प्रश्न के वास्तविक उत्तर के रूप में, मैं क्रोम के डेवलपर टूल का उपयोग करने का सुझाव देता हूं, इसमें केवल कंसोल नहीं है, बल्कि एक तत्व निरीक्षक, और संसाधन ट्रैकर (संसाधन ट्रैकर JSON और AJAX के साथ काम करते समय अमूल्य है) अमान्य जेसन चुपचाप विफल हो जाएगा)

जहां तक ​​मुझे पता है, फ़ायरफ़ॉक्स के लिए फ़ायरबग प्लगइन (इसे स्वयं का उपयोग न करें) में एक समान सुविधा सेट है, इसलिए यदि आप इसके साथ जाने में अधिक सहज हैं।

बस एक डेवलपर के रूप में याद रखें, आपका विकास (और डीबगजिन) वातावरण आपके द्वारा लिखे गए कोड के समान ही महत्वपूर्ण है।

संपादित करें: नोट किया गया है कि आपने यूनिट परीक्षण का उल्लेख किया है। जेएस के लिए वहां कई यूनिट परीक्षण ढांचे हैं जिनमें एक FireUnit नामक फायरबग के साथ एकीकृत है। यदि आप चाहें तो अधिक जानने के लिए एक त्वरित Google खोज करें।

0

यदि आप जावास्क्रिप्ट के साथ यूनिट परीक्षण करना चाहते हैं तो फ़ायरबग का विस्तार होता है जो इससे आपकी सहायता कर सकता है।मैंने उनमें से किसी को भी कोशिश नहीं की है, इसलिए मैं आपको वास्तव में नहीं बता सकता कि कौन सा विचार करने योग्य है, लेकिन यदि आप Google पर कीवर्ड "Firebug unit testing" खोजते हैं तो आप आसानी से उन्हें ढूंढ सकते हैं।

शीर्ष पर आने वाला प्रतीत होता है FireUnit है। आप here कैसे काम करते हैं इसके बारे में कुछ जानकारी प्राप्त कर सकते हैं।

6

आपको परीक्षण करने के लिए सर्वर पर जेएस फ़ाइल अपलोड करने की आवश्यकता नहीं है। बस एक एचटीएमएल लिखने और अपने पसंदीदा संपादक में बाध्यकारी

<script 
      src="js/yourJSFile.js" 
      type="text/javascript"></script> 

संपादित जे एस फ़ाइल जे एस की घोषणा और फिर पेज यह परीक्षण करने के लिए ताज़ा करें।

इकाई परीक्षण के लिए सबसे अच्छा विकल्प Selenium है। यह आपको ब्राउज़र के साथ एक बातचीत रिकॉर्ड करने की अनुमति देता है और फिर इसे वापस चलाता है।

0

Spider Monkey पर विचार करें, जो ब्राउज़र से अलग जावास्क्रिप्ट इंजन है। यदि आप जो विकास कर रहे हैं, उसमें वेबपृष्ठ को प्रतिपादन शामिल नहीं किया गया है या प्रतिपादन कोड (अच्छा अभ्यास!) से अलग किया जा सकता है, तो यह उपयोगी हो सकता है।

0

मैं फ़ायरफ़ॉक्स को क्रोम पसंद करता हूं और मुझे अभी Web Server for Chrome मिला है।

यह सिर्फ एक Google ऐप है जो आपके लिए एक वेब सर्वर स्थापित करता है और कहीं भी आप क्रोम में लॉग इन हो जाएंगे। यह केवल आपके वर्तमान उपकरणों पर फ़ाइल पहुंच की अनुमति देता है, या यदि आप केवल वर्तमान LAN पर अन्य डिवाइस निर्दिष्ट करते हैं।

आप इसे अपने index.html फ़ाइल के साथ निर्देशिका में इंगित करें और अपने ब्राउज़र में http://127.0.0.1:8887 टाइप करें।

0

इसके अतिरिक्त दिए गए उत्तरों के लिए आप स्वचालित परीक्षण के लिए Jasmine का उपयोग कर सकते हैं।


tutorial जो जैस्मीन पर स्वचालित परीक्षण के साथ शुरू करने में मदद करने के लिए प्रतीत होता है इवान हन द्वारा प्रदान किया जाता है।
मैंने इसका इस्तेमाल किया और मेरे लिए यह एक आकर्षण की तरह काम करता है। विशेष रूप से यदि परीक्षण संचालित विकास वह है जिसके लिए आप जा रहे हैं!

1

ब्राउज़र यदि आप डेवलपर उपकरण खोलने के लिए, निम्न चरणों का पालन करें:

1) सूत्रों

2) के सूत्रों के अंतर्गत पर नेविगेट झलकी और खुले run.js

3 क्लिक करें) आप जितना चाहें उतना कोड लिखने के लिए run.js का उपयोग कर सकते हैं और यह देखने के लिए स्थानीय रूप से इसे चला सकते हैं कि आपका कोड काम कर रहा है या नहीं (यह आपको कंसोल पर आउटपुट देगा)

4) इसके अलावा आप इसका उपयोग कर सकते हैं कुछ कीबोर्ड शॉर्टकट्स जो आपके लिए तेज़ी से बनाते हैं।

5) छोटे जावास्क्रिप्ट कोड के लिए, आप को सांत्वना और वहाँ अपने कोड

+0

मुझे लगता है कि आपका मतलब है> 2) "स्रोत" के तहत, "स्निपेट्स" टैब चुनें और एक नया स्निपेट – drzaus

+0

बनाने के लिए राइट-क्लिक करें यह भी ध्यान दें कि क्रोम देव उपकरण स्निपेट सहेजे गए हैं " ब्राउज़र में "(उन फाइलों के लिए नहीं जिन्हें आप स्रोत-नियंत्रण में प्रतिबद्ध कर सकते हैं) और आपके Google खाते के माध्यम से समन्वयित नहीं हैं, इसलिए वे आपके द्वारा लिखे गए ब्राउज़र/कंप्यूटर के लिए विशिष्ट हैं। – drzaus

संबंधित मुद्दे