2011-08-10 18 views
6

एक ऐसा वेबपृष्ठ है जिसे मैं परीक्षण करने का प्रयास कर रहा हूं जिसमें एकाधिक टेक्स्टबॉक्स हैं। मैं उस बिंदु पर पहुंच गया हूं जहां मैं प्रत्येक टेक्स्टबॉक्स में सभी मानों को पुनर्प्राप्त कर सकता हूं और उन्हें एक सरणी में संग्रहीत कर सकता हूं, लेकिन मैं उन मानों को फिर से टेक्स्टबॉक्स में टाइप करने के तरीके पर अटक गया हूं।सेलेनियम आईडीई - एक सरणी में एक पाठ बॉक्स में संग्रहीत टाइपिंग मूल्य?

यहाँ मैं सेलेनियम में अब तक है:

What I have so far बड़ा दृश्य:http://i.stack.imgur.com/rb93k.png

संग्रहीत चर 'गिनती' बस तालिका में पंक्तियों की संख्या है, और कारण नहीं है एक समस्या। जहां समस्या में आता हिस्सा मैं लाल रंग में परिक्रमा कर दिया है जब मैं इस परीक्षण चलाने के लिए, बजाय कि सूचकांक में सरणी में संग्रहीत मूल्य टाइपिंग की है

, यह बस प्रकार:।

enter image description here

यह अंत तक सभी तरह से जारी है।

परिवर्तनीय 'i' ठीक से डाला गया है, लेकिन उस मान को पकड़ने के बजाय किसी कारण से, यह इसे टेक्स्टबॉक्स में टाइप करता है।

क्या कोई जानता है कि मैं सरणी में सही मूल्य कैसे प्राप्त कर सकता हूं?

type | javascript{this.browserbot.getUserWindow().getTestingHooks('TextBoxValue_' + storedVars['i'])} | ${textBoxArray[${i}]} | 

उत्तर

1

मुझे लगता है कि आप अधिक जानकारी के लिए पढ़ें this blog post

javascript{storedVars['textBoxArray['+storedVars['j']+']']} 

साथ ${textBoxArray[${i}] करने के लिए अपने परिक्रमा संदर्भ को बदलने के लिए की जरूरत है, 'सेटिंग और करने के बारे में विशेष रूप से अनुभाग:

नीचे समस्याग्रस्त रेखा है चर'।

लेख से हवाला देते हुए, पर विचार

store | 10 | x 

यह स्पष्ट रूप से सेट एक्स = 10। इसका संदर्भ देने के कुछ तरीके हैं: $ {x} या संग्रहित वर्क्स ['x']। वे वही नहीं हैं।

विशेष

में आप $ {x} के लिए कुछ भी नहीं सौंप सकते।

1

आप अपने समस्याग्रस्त लाइन से पहले एक और आदेश सम्मिलित कर सकते हैं:

getEval | storedVars['text'] = storedVars['textBoxArray'][storedVars['i']]; 

और करने के लिए समस्या पैदा करने वाले लाइन बदलने के लिए:

type | javascript{this.browserbot.getUserWindow().getTestingHooks('TextBoxValue_' + storedVars['i'])} | ${text} 

यह भी शुरुआत में अपने सरणी घोषित करने के लिए शायद उपयोगी होगा परीक्षण:

storeEval | new Array() | textBoxArray 
2

मैं रोबोट टेस्ट फ्रेमवर्क के माध्यम से सेलेनियम लाइब्रेरी का उपयोग कर रहा हूं।मैं टेस्ट केस बनाने और नए कीवर्ड को परिभाषित करने के लिए एचटीएमएल का उपयोग कर किसी भी आईडीई का उपयोग नहीं कर रहा हूं।

कभी मैं एक सूची चर आइटम उपयोग करना चाहते, मैं सिर्फ निम्नलिखित sintaxe

@ {list_variable_name} [0]

ध्यान दें कि $ {variable_name} किसी एकल मान चर तक पहुँचने के लिए है का उपयोग करते हैं या सूची चर के संदर्भ। अगर हम एक सूची आइटम तक पहुंचना चाहते हैं तो हमें $ के बजाय @ का उपयोग करने की आवश्यकता है।

यदि मैं आपकी स्थिति को सही समझता हूं, तो @ {textBoxArray} [$ {i}] आपके लिए काम करना चाहिए।

भी $ {textBoxArray } [$ {मैं}] का प्रयास करें क्योंकि ऐसा लगता है कि आपके बस आख़िरी misplaycing कर रहे हैं}। http://robotframework.googlecode.com/svn/tags/robotframework-2.5.4/doc/userguide/RobotFrameworkUserGuide.html#list-variables

पर

अधिक जानकारी