2012-10-17 25 views
7

मैं soapUI 4.5 में एक REST API जहाँ मैं कदम वाई में एक नया कॉल करने के लिए कदम एक्स की सामग्री का उपयोग करने के लिए जा रहा हूँएसओएपी यूआई आरईएसटी अनुरोध में पथ के हिस्से के रूप में मैं यूआरएल में पैरामीटर कैसे जोड़ सकता हूं?

आदर्श रूप में मैं के साथ बाकी अनुरोध बनाने के लिए चाहते हैं, एक परीक्षण मामला बना रहा हूं कुछ मानकों, ए और बी का कहना है, और कहते हैं कि इन मानकों URL में इस्तेमाल किया जाना चाहिए: http://myapi.com/v1/stuff/A/B

तो मैं एक संपत्ति हस्तांतरण कदम और बस सेट एक में कदम एक्स से निकाले गए मूल्यों और बी

करना चाहते हैं

ऐसा लगता है कि साबुनयूआई केवल मुझे क्वेरीस्ट्रिंग पैरामीटर बनाने देता है, जैसे: http://myapi.com/v1/stuff?ParamA=A&ParamB=B

यह काम करता है, लेकिन मैं इसे दोनों तरीकों से कॉल करने में सक्षम होना चाहता हूं, यह सत्यापित करने के लिए कि वे दोनों काम कर रहे हैं।

क्या मुझे कुछ याद आ रही है?

उत्तर

11

मैं किसी भी माध्यम से एक साबुई विशेषज्ञ नहीं हूं, लेकिन अभी एक बहुत ही समान परिदृश्य के माध्यम से काम किया है, इसलिए यह आपकी मदद कर सकता है।

भाग 1: एक paramatized संसाधन
बनाएं मेरी सेवा में, मैं एक संसाधन बुलाया सामान है:

 
    Resource Name: Get stuff by ID 
    Resource Path/Endpoint: {stuffId} 

:

http://{host}/stuff 

मैं नीचे दिए गए मान के साथ एक बच्चे संसाधन बना और ठीक क्लिक करने से पहले, पैरा को निकालें क्लिक करें - यह पैरामीटर तालिका को एंट्री के साथ पॉप्युलेट करेगा:

 
    Name  | Default value | Style  | Location 
    stuffId | stuffId  | TEMPLATE | RESOURCE 

फिर ठीक क्लिक करें।

http://{host}/stuff/{id} 

आप (ऊपर बी पैरामीटर बनाने के लिए इस दोहराने की आवश्यकता होगी या आप अगर आप एक संसाधन के लिए दो पैरामीटर के रूप में ए और बी बना सकते हैं: अब आप एक संसाधन है कि आप गतिशील रूप से एक आईडी की आपूर्ति करने की अनुमति देता है बी को आपूर्ति किए बिना कभी भी कॉल/सामान/ए नहीं)।

भाग 2:

  1. : बनाएं परीक्षण का मामला
    परीक्षण मामले में अब, तुम, एक पुनः प्राप्त संपत्ति हस्तांतरण, और फिर संपत्ति का उपयोग करके उपरोक्त संसाधन के लिए एक अनुरोध भेजने की जरूरत है परीक्षण मामले में, ए
  2. युक्त प्रतिक्रिया पुनर्प्राप्त करने का अनुरोध बनाएं, टेस्टकेस पर राइट क्लिक करें और एक गुण चरण जोड़ें। रूपरेखा ध्यान में रखते हुए प्रतिक्रिया से ए
  3. का मूल्य स्टोर करने के लिए एक संपत्ति जोड़ें, सही एक का मूल्य "स्थानांतरण> प्रॉपर्टी के लिए" क्लिक करें और, संपत्ति आपने अभी बनाया का चयन करें और हिट ठीक
  4. बनाएं पहले भाग में बनाए गए नए पैरामाइज्ड संसाधन का उपयोग करते हुए एक नया अनुरोध।आईडी की जगह में है, जो इस प्रारूप में एक का मान रखा है संपत्ति के लिए एक संदर्भ डाल:

    ${propertyName} 
    

मैंने कुछ गलत किया है सकते हैं, लेकिन अपने परीक्षण शुरू में संपत्ति हस्तांतरण पर विफल रहता है "गुम स्रोत संपत्ति" के साथ। स्रोत में प्रॉपर्टी ट्रांस्फर चरण के हैं, मुझे संपत्ति को ResponseAsXml

पर सेट करने की आवश्यकता है उम्मीद है कि इससे मदद मिलती है!

+0

धन्यवाद, यह काम करता है! हालांकि मुझे LOCATION पैरामीटर नहीं मिला। और क्या आपको वैकल्पिक पैरामीटर के बारे में कोई जानकारी है? यदि वे उन्हें मूल्य नहीं देते हैं तो वे यूआरएल में {foo} की तरह समाप्त होते हैं। – snaits

+0

शायद स्थान फ़ील्ड केवल कुछ संस्करणों में है - इसका उपयोग यह दिखाने के लिए किया जाता है कि आप किस स्तर पर संपत्ति बना रहे हैं (उदाहरण के लिए, प्रोजेक्ट, सर्विस, रिसोर्स इत्यादि), इसलिए उस संदर्भ के आधार पर अनुमान लगाया जा सकता है जिसमें आप कार्य कर रहे हैं (यानी , हम एक नया संसाधन बना रहे हैं, इसलिए संपत्ति को इस संसाधन के हिस्से के रूप में परिभाषित करना चाहते हैं)। एक यथार्थवादी दुनिया में (ठीक है, शायद सभी दुनिया में) वैकल्पिक यूरी पैरामीटर जैसी कोई चीज़ नहीं है। पैरामीटर के साथ एक संसाधन है और बिना किसी, और वे अलग संसाधन हैं। – Brendan

+0

आपको बहुत बहुत धन्यवाद !! यह बहुत अच्छा काम करता है !!!!!! – MeV

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

  • कोई संबंधित समस्या नहीं^_^