मैं अपने पूर्ण पथ (पूरे एलीमेंट) द्वारा तत्व ढूंढने की कोशिश कर रहा हूं और पहले उच्च स्तर तत्व ढूंढ रहा हूं और फिर उस तत्व (मॉड्यूलर एलिमेंट) के भीतर निम्न स्तर तत्व ढूंढ रहा हूं।ऐपियम findElement एक पंक्ति में दो बार उपयोग किया जाता है
WebElement modularElement = appDriver.findElement(By.xpath("//UIATableCell[2]")).findElement(By.xpath("//UIAStaticText[4]"));
WebElement wholeElement = appDriver.findElement(By.xpath("//UIATableCell[2]/UIAStaticText[4]"));
Logger.LogMessage("modularElement attribute1: " + modularElement.getLocation(), Priority.High);
Logger.LogMessage("wholeElement attribute1: " + wholeElement.getLocation(), Priority.High);
वास्तव में अजीब मुद्दा मैं का सामना कर रहा है दो तत्वों (मॉड्यूलर और पूरे) विभिन्न तत्वों और न ही एक (ऊपर कोड में मुद्रित विभिन्न स्थानों से दिखाया गया है) कर रहे हैं: यहाँ मेरी कोड है। क्या कोई यह समझा सकता है कि यह मामला क्यों है?
धन्यवाद।
अद्यतन:
मैं भी का उपयोग कर .// की कोशिश की है, लेकिन है कि अभी भी प्रदान कर रहा है एक ही मुद्दा:
WebElement modularElement = appDriver.findElement(By.xpath("//UIATableCell[2]")).findElement(By.xpath(".//UIAStaticText[4]"));
आप यह सुनिश्चित करें कि कोड की पहली पंक्ति 'मिलेगा UIAStaticText' केवल तहत कर रहे हैं' UIATableCell [2] ', और दस्तावेज़ में कहीं और नहीं? बस पूछना, चूंकि '//' से शुरू होने वाला XPath सामान्य रूप से * दस्तावेज़ के रूट नोड के सभी वंशजों से चयन करता है। (मैं '/' और '//' के बीच के अंतर के बारे में आपके सामान्य विवरण से सहमत हूं।) – LarsH
@LarsH यह एक महान बिंदु है! मुझे वह याद आया है। संपादित। बहुत धन्यवाद! – alecxe
टिप्पणियों के लिए धन्यवाद। ./UIAStaticText[4 का उपयोग करने से डरते हैं] जिसके परिणामस्वरूप 'तत्व स्थित नहीं हो सका' त्रुटि होती है। उपरोक्त कोड की 2 लाइनों की प्रतिलिपि बनाई गई और चिपकाया गया और संपूर्ण एलिमेंट पाया जा रहा है लेकिन मॉड्यूलर एलिमेंट नहीं है। –