2015-11-26 7 views
9

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

मेरी समझ के लिए

और मुझे ठीक कर लें मैं गलत कर रहा हूँ, How React Works कि यह असली डोम का उपयोग कर एक आभासी डोम बनाता है और एक गतिशील वर्ग के नाम जावास्क्रिप्ट में उन लोगों के लिए इसी उत्पन्न करता है। Diff Algorithm उन ऑटो जनरेट किए गए क्लास नामों का उपयोग करके ऑब्जेक्ट्स को अलग करने के लिए प्रभावी तरीका प्रदान करता है।


समस्या का सामना करना पड़ रहा हूँ Appium का उपयोग कर कि मैं इन वेबव्यू findElementsBy विधि के किसी भी उपयोग से तत्वों उपयोग करने में सक्षम नहीं कर रहा हूँ है। कक्षा का नाम केवल यूआईयूयूटोमेटर के लिए दृश्यमान पैरामीटर है जिस पर हम वास्तव में भरोसा कर सकते हैं, हर नए निर्माण पर प्रतिक्रिया द्वारा बदला जाता है।

  1. वहाँ एक रास्ता तो यह है कि मैं पुस्तकालय में ही प्रतिक्रिया का उपयोग कर कुछ समझदार नाम करने के लिए इन स्वत: जनरेट वर्ग के नाम refactor कर सकते हैं?

chrome inspect के रूप में अपने आवेदन में वेबव्यू के विवरण प्रदान करता है:

<div class="_32f8NoUfyUtNSxo3w4Ptbp" data-reactid=".0.1.$=13:0.0.0">…</div> 
  1. कैसे उपयोग करते हुए वास्तविक डोम तत्वों का उपयोग करने की पर कोई भी विचार इस मामले के लिए एपियम?

जानकारी: WebView.setWebContentsDebuggingEnabled(true) ऐप्लिकेशन कोड में स्थापित किया जाएगा।

यहां किसी भी लीड की सराहना करेंगे।

+0

क्या आप शैलियों के लिए वेबपैक लोडर का उपयोग कर रहे हैं, या आप उन्हें कैसे बना रहे/संकलित कर रहे हैं? –

+0

@DanielSchmidt: मेरे विचारों के संकलन के अंत में अधिक संदर्भ नहीं है। जल्द ही विवरण प्रदान करेंगे। – nullpointer

उत्तर

3

इस लिंक के आधार पर: https://github.com/facebook/react-native/issues/7135

इस समस्या के लिए वैकल्पिक हल: दोनों सुलभ और अपने दृश्यों पर accessibleLabel

डॉक्टर का उपयोग accessiblity लेबल पर: https://facebook.github.io/react-native/docs/accessibility.html#accessibilitylabel-ios-android

मेरी पर प्रतिक्रिया देशी घटक:

<TextInput accessible={true} accessibilityLabel={'Tap Me'}></TextInput> 

मेरी लिपि पर टेस्ट:

mobileElement = find_Element(accessibilty_id, "Tap Me") 
mobileElement.send_keys "hello world" 
+0

क्या दृश्य कोड में 'पहुंच योग्य' और 'accessiblityLabel' का उपयोग करना जरूरी है? आपके द्वारा प्रदान की गई स्क्रिप्ट भी एपियम के साथ काम करती है क्योंकि मैंने अभी तक चयनकर्ता के रूप में ऐसी कोई विशेषता नहीं उपयोग की है? – nullpointer

+0

हां, मेरी स्क्रिप्ट एपियम के साथ काम करती है, लेकिन केवल उस घटक के लिए जिसमें एक्सेसिबिलिटी लेबल विशेषता है। प्रतिक्रिया मूल दस्तावेज को पढ़ने के बाद, सभी प्रतिक्रिया मूल घटक के पास एक पहुंच क्षमता लेबल विशेषता नहीं है।मैं प्रतिक्रिया देशी में स्वचालित परीक्षण के लिए कैलाबैश का उपयोग करना पसंद करता हूं, कैलाबैश में आप घटक के सूचकांक, घटक के अंदर पाठ, या अभिगम्यता लेबल के आधार पर तत्व पा सकते हैं – RobbyWH

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