ሴሊኒየም ሲ.ኤስ.ኤስ መራጮች ምሳሌዎች

ከሲፓስ የበለጠ ፈጣን እና የበለጠ ሊነበብ የሚችል በመሆኑ በ CSS መራጮች አባላትን መፈለግ ተመራጭ መንገድ ነው።

ይህ መማሪያ በ CSS መራጮች በመጠቀም በሴሊኒየም ውስጥ የድር አካላትን እንዴት እንደሚገኙ ምሳሌዎችን ይሰጣል ፡፡



የ CSS መራጮች በባህሪ

እስቲ የሚከተሉትን ባህሪዎች [መታወቂያ ፣ ክፍል ፣ ስም ፣ እሴት] ያለው መለያ አለን እንበል


ንጥረ ነገሮችን በባህሪው ፈልጎ ለማግኘት አጠቃላይው መንገድ-

css = element_name[='']

ለምሳሌ:


WebElement firstName = driver.findElement(By.cssSelector('input[name='first_name']'));

የመታወቂያ ባህሪይ

በሲ.ኤስ.ኤስ ውስጥ እኛ # መጠቀም እንችላለን id ን ለመምረጥ ማስታወሻ የአንድ ንጥረ ነገር



ለምሳሌ:

driver.findElement(By.cssSelector('input#firstname')); //or driver.findElement(By.cssSelector('#firstname'));

የመደብ ባህሪ

ተመሳሳይ መርህ አባላትን በ classዎቻቸው ለመፈለግ ሊያገለግል ይችላል አይነታ

. እንጠቀማለን ማስታወሻ


driver.findElement(By.cssSelector('input.myForm')); //or driver.findElement(By.cssSelector('.myForm')); ማስታወሻ:በሚጠቀሙበት ጊዜ ተጨማሪ ጥንቃቄ ያድርጉ . ተመሳሳይ የመደብ ባህሪ ያላቸው በኤችቲኤምኤል ምንጭ ላይ ብዙ የድር አካላት ሊኖሩ ስለሚችሉ ማስታወሻ።

በርካታ ባህሪዎች

ትክክለኛውን ንጥረ ነገር ለመፈለግ አንዳንድ ጊዜ በምርጫ መስፈርት የበለጠ ግልጽ መሆን ያስፈልጋል ፡፡

በአያክስ ጥሪ ላይ በመመስረት የማሳያው ዋጋ “ምንም” ወይም “ብሎክ” ሊሆን ይችላል። በዚህ ሁኔታ ውስጥ ንጥረ ነገሩን በክፍል እና በቅጡ ማግኘት አለብን ፡፡

ለምሳሌ:

driver.findElement(By.cssSelector('div[class='ajax_enabled'] [style='display:block']'));

ባህሪይ የተወሰነ እሴት አይይዝም

በድር ድራይቨር ውስጥ እርስዎ የማይመረጡዋቸውን እሴቶች የያዙ ይዘቶችን እንዴት ያገኛሉ? ይህ የሲ.ኤስ.ኤስ መራጭ ምሳሌ በተወሰኑ የባህሪ እሴት እንዴት እንደማይመረጥ ያሳያል


አንድ አይነት ባህሪ እና የባህሪ እሴት የሚጋሩ ብዙ አካላት አሉዎት እንበል ፣ ነገር ግን ከእነዚህ ንጥረ ነገሮች ውስጥ የተወሰኑት በእሴቱ ላይ የተጫኑ ሌሎች ተለዋዋጮች አሏቸው። ለምሳሌ

ከላይ ባለው ቅንጥብ ውስጥ አንድ የሚገኝ ቀን (ማለትም ሁለቱን የመጨረሻ div አካላት) መምረጥ እንፈልጋለን

እንደሚታየው ፣ አራቱም ዲቪዎች “የቀን መቁጠሪያ-ቀን” ን ይይዛሉ ግን የመጀመሪያዎቹ ሁለቱ ደግሞ እኛ የማንፈልገውን “የማይገኝ” ይዘዋል ፡፡

የመጀመሪያዎቹን ሁለት ዲቪዎች ላለመምረጥ የ CSS መራጭ ነው


driver.findElement(By.cssSelector('div[class*=calendar-day-]:not([class*='unavailable'])'));'

የልጆች አካልን ማግኘት

የምስል መለያውን ለማግኘት የሚከተሉትን እንጠቀማለን

driver.findElement(By.cssSelector('div#logo img'));

ብዙ የልጆች ንጥረ ነገሮች

እንደ ዝርዝር ንጥረ ነገሮች ባሉ በተመሳሳይ ወላጅ አካል ውስጥ በርካታ የልጆች አካላት ሲኖሩባቸው አጋጣሚዎች አሉ


  • Apple

  • Orange

  • Banana

እንደሚታየው ፣ የግለሰብ ዝርዝር አካላት ከእነሱ ጋር የተጎዳኘ መታወቂያ የላቸውም። ኤለመንቱን ከ ‹ብርቱካና› ጽሑፍ ጋር ለማግኘት እኛ nth-of-type መጠቀም አለብን ፡፡

ለምሳሌ:


driver.findElement(By.cssSelector('ul#fruit li:nth-of-type(2)'));

በተመሳሳይ የመጨረሻውን የልጆች አካል ማለትም ‹ሙዝ› ን ለመምረጥ እኛ እንጠቀማለን

driver.findElement(By.cssSelector('ul#fruit li:last-child'));

ተለዋዋጭ የተፈጠሩ አይድስ

ተለዋዋጭ በሆኑ አይድስ ንጥረ ነገሮችን ለማግኘት የሕብረቁምፊ አመልካቾችን መጠቀም እንችላለን ፡፡

በዚህ ምሳሌ ፣ ሦስቱም የሟርት አካላት ‹የዘፈቀደ› የሚል ቃል ይይዛሉ ፡፡

ጅማሬዎችን ይስጡ ከ ጋር

የመጀመሪያውን ለመምረጥ div አባል ፣ እኛ እንጠቀማለን ^= ትርጉሙ ‹ይጀምራል›

driver.findElement(By.cssSelector('div[id^='123']'));

የባህሪይ መጨረሻዎች በ

ሁለተኛውን ለመምረጥ _ _ + _ | አባል ፣ እኛ እንጠቀማለን div ትርጉሙም ‹ያበቃል› ማለት ነው

$=

ባህሪይ ይtainsል

የመጨረሻውን ለመምረጥ driver.findElement(By.cssSelector('div[id$='456']')); የምንጠቀምበት ንጥረ ነገር div ትርጉሙ ‹ንዑስ-ክር›

*=

እኛ ደግሞ | _ _ + _ | መጠቀም እንችላለን

driver.findElement(By.cssSelector('div[id*='_pattern_']'));

ተጨማሪ ንባብ: