2012-07-23 6 views
5

मैं एंजुलरजेज़ का उपयोग करके बनाए गए सेलेनियम में एक वेबपृष्ठ का परीक्षण करने की कोशिश कर रहा हूं। इस पृष्ठ पर एक टेक्स्ट फ़ील्ड हैं जो उपयोगकर्ता भर जाएगा। चूंकि उपयोगकर्ता टेक्स्ट फ़ील्ड में टाइप कर रहा है, कोणीय प्रत्येक कीस्ट्रोक पिकअप करेगा और फ्लाई पर एक पूर्वावलोकन प्रदर्शित करेगा ठीक है कि स्टैक ओवरफ्लो प्रश्न भरने से पूर्वावलोकन कैसे उत्पन्न होता है। :)टेक्स्टफील्ड पर सेलेनियम जो घटनाओं को ट्रिगर करता है, मानव बातचीत की नकल करने का एक तरीका

मेरा मुद्दा यह है कि मैं इसका परीक्षण कैसे कर सकता हूं यह नहीं समझ सकता। यदि मैं टेक्स्ट फ़ील्ड पर क्लिक करता हूं और टाइप करता हूं तो यह काम करता है। मैंने कोशिश की है, सेलेनियम टाइप कमांड, टाइपकेज़ कमांड, mousedown और mouseup कमांड का उपयोग करके और फिर उपयोगकर्ता टाइपिंग की नकल करने का प्रयास करने के लिए टाइप करें। लेकिन वे काम नहीं कर रहे हैं जैसे इवेंट हैंडलर ट्रिगर नहीं हो रहे हैं। मुझे मानव प्रकार के तरीके की नकल करने की ज़रूरत है ताकि घटनाएं ट्रिगर हो जाएंगी। यही वह है जो मैं सोच रहा हूं लेकिन यह काम नहीं करता है।

<tr> 
    <td>mouseDown</td> 
    <td>name=appName</td> 
    <td></td> 
</tr> 
<tr> 
    <td>mouseUp</td> 
    <td>name=appName</td> 
    <td></td> 
</tr> 
<tr> 
    <td>typeKeys</td> 
    <td>name=appName</td> 
    <td>foobar</td> 
</tr> 

अगर वहाँ वह भी स्वीकार्य होगा जावास्क्रिप्ट का उपयोग करने का तरीका है। धन्यवाद।

उत्तर

5

मुझे सेलेनियम आईडीई का उपयोग कर कोणीय जेएस फॉर्म फ़ील्ड का परीक्षण करने के साथ एक ही समस्या थी। मैंने फोकस के प्रत्येक ज्ञात संयोजन की कोशिश की, क्लिक करें, क्लिक करें, कीप्रेस, इत्यादि। आखिर में पाया गया कि पाठ में फ़ील्ड को रखने के लिए sendKeys कमांड का उपयोग करने का क्या काम था। सेलेनियम-IDE में तो, आदेश था

sendKeys | xpath=(//input[@type='text'])[2] | TEXT To Enter 

ध्यान दें कि मैं xpath इस्तेमाल किया है, लेकिन यह मामला नहीं था कि मैं क्या लक्ष्य की पहचान करते थे (सीएसएस =, xpath, // div), के किसी भी पहचानकर्ताओं ने काम किया, यह सिर्फ चाल करने के लिए sendKeys का उपयोग कर लिया।

+0

यही मुझे चाहिए! –

1

या तो फोकस या क्लिक कमांड का प्रयास करें।

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