सबसे पहले, मैं टेस्ट ड्राइव डेवलपमेंट (टीडीडी) और व्यवहार संचालित विकास (बीडीडी) दोनों के लिए नया हूं और मुझे विश्वास है कि यह वेब पेज विकसित करने का एक अच्छा तरीका है क्योंकि पृष्ठों को अक्सर विकसित करने की आवश्यकता होती है तेजी से, जो कुछ भी कर सकते हैं, इससे पहले कि आपको टेस्ट कोड विकसित करना पड़े तो मुश्किल है।जैस्मीन कैसे काम करता है अगर फ़ंक्शन मूल्य वापस नहीं करता है?
किसी भी तरीके से!
कारण यह है कि मैं इस धागे को लिख रहा हूं, जो मुझे लगता है, मुद्दा नहीं है (लेकिन यदि आपके पास इनपुट है तो मैं इसे पढ़ने का आनंद भी लेगा!)। मैं सिंटैक्स के बारे में कुछ पढ़ रहा हूं, यह कैसे काम करता है, और वह सब कुछ। मैंने पाया कि अगर मेरा कार्य मूल्य वापस नहीं करता है तो दृष्टिकोण को लागू करना मुश्किल है।
$('input[type="text"]').click(function() {
$(this).val('Oh, that tickles!');
});
कैसे चमेली इस का क्या करता है:
के उदाहरण के लिए कहते हैं कि मैं एक क्लिक-घटना समारोह है कि महज एक इनपुट के एक पाठ मान बदलाव हुए कि चलो? निम्नलिखित कोड की तरह ?:
describe('Input type text is clicked', function() {
it('changes text in the input field', function() {
expect($('input[type="text"]').val()).toEqual("Oh, that tickles!");
});
});
यह गलत है, क्योंकि jQuery ऑब्जेक्ट में कई इनपुट फ़ील्ड हो सकते हैं जिनमें वह मान नहीं है। क्या तत्व ढूंढने के कोई तरीके हैं (जैसे $(this)
या इसी तरह), या मुझे जैस्मीन परीक्षण के अंदर एक क्लिक-हैंडलर रखना चाहिए? इस तरह:
describe('Input type text is clicked', function() {
it('changes text in the input field', function() {
$('input[type="text"]').click(function() {
expect($(this).val()).toEqual("Oh, that tickles!");
}
});
});
कुछ स्पष्टता अग्रिम में अच्छा :)
धन्यवाद होगा एक बहुत!
/जे।
मैं इसके साथ भी संघर्ष कर रहा हूं। लेकिन मैंने बस एक ऐसे फ़ंक्शन में सब कुछ डाला जो 'तर्क' करता है और वापसी मूल्य देता है, फिर एक jquery ईवेंट बाकी को संभालता है। मैं केवल समारोह का परीक्षण करता हूं। –
ऑफसी, यह एक समाधान भी है। यद्यपि ऐसे समय होंगे जब आप वास्तव में किसी ईवेंट के अंदर अपने कोड का परीक्षण करना चाहते हैं (जो आम तौर पर कोई मान नहीं लौटाता)। Xn.s 'उत्तर बहुत उपयोगी था, इसे जांचें। :) –