XPath پر مشتمل ہے ، بعد میں بہن بھائی ، پادری اور سیلینیم اور/یا۔

اگر ایک سادہ۔ ایکس پاتھ۔ ہمارے ٹیسٹ سکرپٹ کے لیے ایک پیچیدہ ویب عنصر تلاش کرنے کے قابل نہیں ہے ، ہمیں XPath 1.0 لائبریری سے افعال استعمال کرنے کی ضرورت ہے۔ ان افعال کے امتزاج کے ساتھ ، ہم زیادہ مخصوص XPath بنا سکتے ہیں۔ آئیے ایسے 3 افعال پر تبادلہ خیال کرتے ہیں۔

  1. مشتمل
  2. بہن بھائی۔
  3. پرکھا
  4. اور
  5. والدین
  6. سے شروع ہوتا ہے۔
  7. ایکس پاتھ محور۔

آئیے ان کا تفصیل سے مطالعہ کریں -

سیلینیم میں کیا ہے ()؟

سیلینیم میں () پر مشتمل ہے۔ ایکس پاتھ ایکسپریشن کے اندر ایک فنکشن ہے جو ویب عناصر کی تلاش کے لیے استعمال ہوتا ہے جس میں ایک خاص متن ہوتا ہے۔ ہم وہ تمام عناصر نکال سکتے ہیں جو دی گئی ٹیکسٹ ویلیو سے میل کھاتے ہیں XPath مشتمل ہے () پورے ویب پیج پر فنکشن کا استعمال کرتے ہوئے۔ XPath پر مشتمل جزوی متن کے ساتھ عنصر کو تلاش کرنے کی صلاحیت رکھتا ہے۔

سابق. یہاں ہم ایک اینکر تلاش کر رہے ہیں جس میں متن 'SAP M' ہے۔ | _+_ |

نوٹ: آپ اس پر درج ذیل XPath مشق کی مشق کر سکتے ہیں۔ https://demo.on2vhf.be/test/selenium-xpath.html

سیلینیم ویب ڈرائیور میں بہن بھائی کیا ہے؟

TO سیلینیم ویب ڈرائیور میں بہن بھائی۔ ایک ایسا فنکشن ہے جو ویب عنصر لانے کے لیے استعمال ہوتا ہے جو کہ بنیادی عنصر کا بھائی ہے۔ اگر بنیادی عنصر جانا جاتا ہے تو ویب عنصر آسانی سے پایا یا پایا جا سکتا ہے جو سیلینیم ویب ڈرائیور میں Xpath اظہار کے بہن بھائی کی صفت کو استعمال کر سکتا ہے۔

XPath میں بہن بھائی کی مثال: یہاں 'a' کے بہن بھائی عنصر کی بنیاد پر ہم 'h4' تلاش کر رہے ہیں

پرکھا : بنیادی عنصر کی بنیاد پر ایک عنصر تلاش کرنے کے لیے ہم XPath کی آباؤ اجداد وصف استعمال کر سکتے ہیں۔

آئیے ایک مثال کا استعمال کرتے ہوئے ان 3 افعال کو سمجھتے ہیں -

ٹیسٹ کے اقدامات

نوٹ: ٹیوٹوریل کی تخلیق کی تاریخ کے بعد سے گرو 99 کے ہوم پیج کو اپ ڈیٹ کیا گیا ہے لہذا ٹیسٹ چلانے کے بجائے ڈیمو سائٹ استعمال کریں

  1. کے پاس جاؤ https://demo.on2vhf.be/test/on2vhfhome/
  2. سیکشن 'ہمارے چند مشہور کورسز' میں ، ایسے تمام ویب عناصر تلاش کریں جو کسی ویب عنصر کے بھائی ہیں جن کا متن 'سیلینیم' ہے۔
  3. ہمیں XPath متن پر مشتمل عنصر ملے گا ، اجداد اور بہن بھائی کا فنکشن۔

USING پر مشتمل ہے اور XPath Sibling

'//h4/a[contains(text(),'SAP M')]'

آؤٹ پٹ اس طرح ہوگا:

سیلینیم ویب ڈرائیور میں پادری۔

سیلینیم ویب ڈرائیور میں پادری۔ ایک فنکشن ہے جو مخصوص پرت پر کسی مخصوص رکن کے آباؤ اجداد کو تلاش کرنے کے لیے استعمال ہوتا ہے۔ آباو اجداد کی سطح یا رکن کی سطح کی نسبت آباو اجداد کی سطح واضح طور پر بیان کی جا سکتی ہے۔ یہ باپ دادا سے کئی درجہ بندی کے اقدامات واپس کرتا ہے ، مخصوص باپ دادا کو تلاش کرتا ہے جو صارف چاہتا ہے۔

اب فرض کریں کہ ہمیں اینکر کے آباؤ اجداد کی مدد سے 'پاپولر کورس' سیکشن میں تمام عناصر تلاش کرنے کی ضرورت ہے جس کا متن 'سیلینیم' ہے۔

یہاں ہماری xpath استفسار | _+_ | کی طرح ہوگا۔

مکمل کوڈ۔

'//div[@class='canvas- graph']//a[@href='tmp/accounting.html'][i[@class='icon-usd']]/following-sibling::h4'

آؤٹ پٹ اس طرح نظر آئے گا-

اور اور کا استعمال کرتے ہوئے۔

AND اور OR استعمال کرکے آپ ہمارے XPath اظہار میں 2 شرائط رکھ سکتے ہیں۔

  • اور دونوں صورتوں میں 2 شرائط درست ہونی چاہئیں تب ہی وہ عنصر ڈھونڈتا ہے۔
  • یا 2 شرائط میں سے کوئی ایک درست ہونے کی صورت میں صرف وہی عنصر ڈھونڈتا ہے۔

یہاں ہمارا XPath استفسار اس طرح ہوگا _ _+_ | | _+_ |

ٹیسٹ کے مراحل:

  1. کے پاس جاؤ https://demo.on2vhf.be/v1/
  2. سیکشن میں ، XPath کے مختلف افعال کے ساتھ عنصر تلاش کرنے کے لیے مذکورہ ڈیمو سائٹ کا استعمال کریں گے۔

آپ کو AND اور OR کا استعمال کرتے ہوئے ایک عنصر ملے گا۔

اور یا مثال۔

 import java.util.List; import java.util.concurrent.TimeUnit; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.firefox.FirefoxDriver; import org.testng.annotations.Test; public class SiblingAndParentInXpath { @Test public void testSiblingAndParentInXpath(){ WebDriver driver; String driverPath = 'C:\geckodriver.exe'; System.setProperty('webdriver.gecko.driver', driverPath); driver = new FirefoxDriver(); driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); driver.get('https://demo.on2vhf.be/test/on2vhfhome/'); //Search element inside 'Popular course' which are sibling of control 'SELENIUM' ,Here first we will find a h2 whose text is ''A few of our most popular courses' ,then we move to its parent element which is a 'div' , inside this div we will find a link whose text is 'SELENIUM' then at last we will find all of the sibling elements of this link('SELENIUM') List dateBox = driver.findElements(By.xpath('//h2[contains(text(),'A few of our most popular courses')]/parent::div//div[//a[text()='SELENIUM']]/following-sibling::div[@class='rt-grid-2 rt-omega']')); //Print all the which are sibling of the the element named as 'SELENIUM' in 'Popular course' for (WebElement webElement : dateBox) { System.out.println(webElement.getText()); } driver.close(); } } 

سیلینیم میں والدین کیا ہے؟

سیلینیم میں والدین۔ ایک ایسا طریقہ ہے جو ویب پیج میں منتخب کردہ موجودہ نوڈ کے پیرنٹ نوڈ کو بازیافت کرنے کے لیے استعمال کیا جاتا ہے۔ یہ اس صورت حال میں بہت مفید ہے جب آپ کسی عنصر کو منتخب کرتے ہیں اور Xpath کا استعمال کرتے ہوئے پیرنٹ عنصر حاصل کرنے کی ضرورت ہوتی ہے۔ یہ طریقہ والدین کے والدین کو حاصل کرنے کے لیے بھی استعمال کیا جاتا ہے۔

یہاں ہمارا XPath استفسار اس طرح ہوگا _ _+_ |

والدین کا استعمال کرتے ہوئے XPath | _+_ |

کے ساتھ شروع ہوتا ہے۔

اسٹارٹز فنکشن کا استعمال کرتے ہوئے ، آپ کو وہ عنصر مل سکتا ہے جس کی صفت متحرک طور پر ریفریش یا دیگر آپریشنز جیسے کلک ، جمع ، وغیرہ پر تبدیل ہوتی ہے۔

یہاں ہمارا XPath استفسار اس طرح ہوگا _ _+_ |

'//div[.//a[text()='SELENIUM']]/ancestor::div[@class='rt-grid-2 rt-omega']/following-sibling::div'

ایکس پاتھ محور

XPath محور کا استعمال کرتے ہوئے ، آپ ایک ویب صفحے پر متحرک اور انتہائی پیچیدہ عناصر تلاش کر سکتے ہیں۔ XPath محور میں عنصر ڈھونڈنے کے کئی طریقے ہوتے ہیں۔ یہاں ، کچھ طریقوں پر تبادلہ خیال کریں گے۔

درج ذیل : یہ فنکشن خاص جزو کا فوری عنصر واپس کرے گا۔

یہاں ہمارا XPath استفسار اس طرح ہوگا _ _+_ |

XPath مندرجہ ذیل کا استعمال کرتے ہوئے | _+_ |

سابقہ: یہ فنکشن خاص عنصر کے سابقہ ​​عنصر کو لوٹائے گا۔

یہاں ہمارا XPath استفسار اس طرح ہوگا _ _+_ |

XPath سابقہ ​​کا استعمال کرتے ہوئے | _+_ |

د) نسل: یہ فنکشن مخصوص عنصر کی اولاد کو لوٹائے گا۔

یہاں ہمارا XPath استفسار اس طرح ہوگا _ _+_ |

نزول کا استعمال کرتے ہوئے XPath | _+_ |

خلاصہ

  • کچھ حالات ایسے ہوتے ہیں جب کسی عنصر کو ڈھونڈنے کے لیے باقاعدہ XPath استعمال نہیں کیا جا سکتا۔ ایسی صورتحال میں ، ہمیں xpath استفسار سے مختلف افعال کی ضرورت ہے۔
  • وہاں کچھ اہم XPath افعال جیسے XPath پر مشتمل ہے ، والدین ، ​​آباؤ اجداد ، پیروی کرنے والے بہن بھائی وغیرہ۔
  • ان افعال کی مدد سے ، آپ پیچیدہ XPath تاثرات تشکیل دے سکتے ہیں۔