वेब अनुप्रयोगों में टेस्ट संचालित विकास के लिए संसाधन? [बन्द है]


15

मैं हमारे वेब अनुप्रयोगों में कुछ TDD को लागू करने और लागू करने की कोशिश करना चाहता हूं ताकि रिग्रेसन को कम किया जा सके और रिलीज की गुणवत्ता में सुधार किया जा सके, लेकिन मैं आश्वस्त नहीं हूं कि वेब अनुप्रयोगों के रूप में कुछ के साथ स्वचालित परीक्षण कितना अच्छा प्रदर्शन कर सकता है।

मैंने टीडीडी और यूनिट परीक्षण के बारे में पढ़ा है और कोशिश की है, लेकिन उदाहरण 'ठोस' हैं और मुद्रा कन्वर्टर्स जैसी सरल कार्यक्षमताएं हैं, और इसी तरह।

क्या कोई संसाधन हैं जो इकाई परीक्षण सामग्री प्रबंधन और प्रकाशन प्रणालियों के साथ मदद कर सकते हैं? एक शॉपिंग कार्ट / स्टोर (भौतिक और ऑनलाइन उत्पादों) का परीक्षण करने वाली इकाई के बारे में कैसे? AJAX?

"वेब टेस्ट ड्रिवेन डेवलपमेंट" के लिए गुगली करना मुझे कई वर्षों पहले पुराने लेखों से मिलता है, या तो कैलकुलेटर-समान फ़ंक्शन के समान उदाहरणों को कवर करता है या इस बारे में चर्चा करता है कि TDD कुछ भी (बिना किसी उदाहरण के) से बेहतर क्यों है।


1
उपलब्ध उपकरण भाषा पर निर्भर करेगा। आप किस भाषा का उपयोग कर रहे हैं?
एल्ब

मुझे एहसास है कि - लेकिन मैं विशिष्ट उपकरणों के बजाय चर्चा लेख और निबंध के लिए अधिक देख रहा था। मुझे पता है कि कौन से उपकरण उपलब्ध हैं, लेकिन यह सीखना चाहते हैं कि फ्रंट-एंड संचालित अनुप्रयोगों के लिए उनका उपयोग कैसे करना सबसे अच्छा है।
होरस्कॉल

जवाबों:


2

बड़ा अस्वीकरण: मैंने कोई वेब एप्लिकेशन नहीं बनाया है और न ही मैंने किसी वेब एप्लिकेशन का परीक्षण किया है। सूचना के क्षेत्र में मैं अपने यादृच्छिक क्षेत्रों में अवशोषित कर ली गई जानकारी के सिर्फ tidbits हैं।

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

जब यूआई का परीक्षण करने की बात आती है, तो अपने व्यावसायिक नियमों को मॉक कार्यान्वयन के साथ बदलें जो कि पूर्वानुमान योग्य तरीके से प्रतिक्रिया देते हैं।

उपरोक्त दो नियम RailsConf 2010 में बॉब मार्टिन की बातचीत से लिए गए हैं । बात टीडीडी और उस खंड के बारे में नहीं है जहाँ वह परीक्षण का उल्लेख करता है और कहीं बीच में छोटा है।

वहाँ की तरह उपकरण हैं JsUnit , JSSpec , YUI टेस्ट जावास्क्रिप्ट और परीक्षण के लिए सेलेनियम और Watir यूआई के परीक्षण के लिए।

व्यावहारिक बुकशेल्फ वेब अनुप्रयोगों के परीक्षण को कवर कुछ ही पुस्तकें हैं। परीक्षण के साथ टैग की गई पुस्तकों की एक सूची http://www.pragprog.com/categories/design पर है । प्रैग्मैटिक बुकशेल्फ़ वेब ऐप टेस्टिंग बुक्स मुख्य रूप से रूबी और रेल्स के आस-पास फोकस्ड हैं, लेकिन इन्हें उदारतापूर्वक लागू किया जाना चाहिए।


वेब डिज़ाइन के साथ एक प्रमुख मुद्दा सीएसएस परीक्षण है - एक नए सीएसएस नियम के अनपेक्षित परिणाम हो सकते हैं, लेकिन केवल विशिष्ट सामग्री वाले पृष्ठ पर ... क्या आप इकाई परीक्षण कर सकते हैं?
होरसकॉल

अच्छा प्रश्न। मेरा सुझाव है कि यह आपके UI परीक्षण का हिस्सा है। आप अपने परीक्षण को उन विभिन्न पृष्ठ सामग्रियों को शामिल करने के लिए विकसित करते हैं जिन्हें आप अपेक्षा करते हैं (और कुछ ऐसी जो आप अपेक्षा नहीं करते हैं) और अपनी स्वीकृति को उचित रूप से लिखें। फिर, जब आप नए CSS नियम पेश करते हैं, तो आपके UI परीक्षण को किसी भी प्रतिगमन को उजागर करना चाहिए। हो सकता है कि यह प्रक्रिया बहुत समय लेने वाली हो और साइट पर QA परीक्षण करने और समस्याओं की रिपोर्टिंग करने से आपको बेहतर सेवा मिल सकती है।
एंथनी क्रैम्प

3

टेस्ट-चालित जावास्क्रिप्ट डेवलपमेंट , क्रिश्चियन जोहान्सन की एक बहुत अच्छी किताब है , जो सिनोन.ज्स और बस्टर.जे के पीछे डेवलपर है , जो विषयों को शामिल करता है जैसे (वेबसाइट से लिया गया):

  • इकाई परीक्षण और TDD को समझना
  • सही इकाई परीक्षण ढांचे का चयन
  • बिल्डिंग क्लीनर एपीआई, मॉड्यूलर और मजबूत जावास्क्रिप्ट
  • रिफैक्टरिंग के माध्यम से लगातार कोड में सुधार
  • पांच व्यावहारिक टीडीडी सत्र: अजाक्स, डीओएम हेरफेर, नोड.जेएस और अधिक
  • भाषा से परिचित नहीं डेवलपर्स के लिए जावास्क्रिप्ट के लिए परीक्षण संचालित दौरे

वर्तमान में हम मोचा के साथ Sinon.js का उपयोग करते हैं, लेकिन Buster.js पर स्विच करने के लिए तैयार है, क्योंकि इसकी विशेषताएं वास्तव में साफ हैं!


1

एक परियोजना पर मैंने हाल ही में काम किया था, मुख्य डेवलपर ने एकता का उपयोग करने का निर्णय लिया था ताकि एक बड़े वेब एप्लिकेशन में मॉकिंग और टीडीडी को सरल बनाया गया था - मुझे लगता है कि एकता का उपयोग अक्सर टीडीडी एक वेब अनुप्रयोग के साथ होगा।

जांच इकाई परीक्षण सीएमएस के लिए एक मृत अंत होने की संभावना है क्योंकि वहाँ केवल एक नकली बात नहीं है। मैं यह नहीं देखता कि http ट्रैफ़िक को पृष्ठों पर मॉक किए बिना क्या परीक्षण किया जा सकता है - और उस बिंदु पर परीक्षण का बहुत कम मूल्य है।

मैं वेब अनुप्रयोगों के साथ अंगूठे का एक उपयोगी नियम मानता हूं यदि यह जटिलता को कम करने के लिए एक नकली का उपयोग कर सकता है तो यह संभवतः इकाई परीक्षण किया जा सकता है।

इसलिए एक वेब एप्लिकेशन में आप अपने डेटाबेस को अपने डेटा एक्सेस लेयर या मॉडल के विभिन्न भागों की यूनिट टेस्ट के लिए मॉक कर सकते हैं; आप उपयोगकर्ता इनपुट को यूनिट परीक्षण दृश्य या UI और इतने पर मॉक कर सकते हैं।


0

मैंने PyDon + Django के साथ वेब विकास के लिए TDD पर एक किताब लिखी है। इसमें टीडीडी को शामिल किया गया है, जिसमें एंड-टू-एंड / फंक्शनल टेस्ट (सेलेनियम) और लोअर-लेवल "यूनिट" टेस्ट शामिल हैं। मैं आधुनिक देव प्रथाओं को भी शामिल करता हूं जैसे कि कैसे अपने वर्कफ़्लो में गिट को एकीकृत करें, कैसे एक सर्वर पर तैनात करें और इसे स्वचालित करें और परीक्षण करें, निरंतर एकीकरण, नकली और परीक्षण अलगाव, और बहुत कुछ:

http://www.obeythetestinggoat.com/

(या http://shop.oreilly.com/product/0636920051091.do )


लिंक टूटा हुआ है
क्लेडॉन एलेनी
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.