Selenium CSS Xulashada Tusaalooyinka

Helitaanka walxaha ay soo xusheen CSS waa habka la doorbido maadaama ay ka dhaqso badan tahay kana akhris badan tahay XPath.

Casharkaan wuxuu bixinayaa tusaalooyin sida loo helo walxaha shabakadda ee Selenium iyadoo la adeegsanayo xulashada CSS.



Xulashada CSS adoo Sifeeya

Aynu qiyaasno inaan leenahay sumad leh astaamaha soo socda [id, class, name, value]


Habka guud ee loo helo astaamaha sifo ahaan waa:

css = element_name[='']

Tusaale:


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

Aqoonsiga Id

CSS, waxaan u isticmaali karnaa # Ogeysiis lagu xusho id sifo cunsur:

Tusaale:

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

Nooca Fasalka

Mabda'a isku mid ah ayaa loo isticmaali karaa in lagu ogaado walxaha iyaga class sifo.

Waxaan u adeegsanaa . ogeysiis.


driver.findElement(By.cssSelector('input.myForm')); //or driver.findElement(By.cssSelector('.myForm')); Fiiro gaar ah:Ka taxaddar dheeraad ah marka aad isticmaaleyso . farriin maadaama ay jiri karaan waxyaabo badan oo websaydh ah oo laga heli karo isha HTML oo leh astaamo isku mid ah.

Sifooyin badan

Mararka qaarkood waxaa jira baahi loo qabo in si gaar ah loogu qeexo shuruudaha xulashada si loo helo qaybta saxda ah.

Qiimaha soo bandhigu wuxuu noqon karaa 'midna' ama 'baloog' iyadoo kuxiran wicitaanka ajax. Xaaladdan oo kale, waa inaan ku helno cunsurka fasal iyo qaab labadaba.

Tusaale:

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

Sifada AAN ku jirin qiimo cayiman

Gudaha WebDriver, sidee ku heleysaa cunsurro ay astaantoodu ku jirto qiyam aadan rabin inaad doorato? Tusaalahan xulista CSS wuxuu muujinayaa sida AAN loogu xulan karin qiime gaar ahaaneed


Ka soo qaad inaad haysato waxyaabo badan oo wadaaga isla sifo iyo qiime astaamo, laakiin qaar ka mid ah curiyeyaashaas waxay leeyihiin doorsoomayaal kale oo ku lifaaqan qiimaha. tusaale ahaan:

Qeybta kore, waxaan rabnaa inaan xusno maalin la heli karo (yacni labada dambe div canaasiirta)

Sida la arki karo, afarta qayboodba waxay ka kooban yihiin 'kalandar-maalin-' laakiin labada horeba waxa kale oo ku jira 'lama heli karo' oo aynaan rabin.

Xulashada CSS ee Aan dooran labada div ee ugu horeysa waa


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

Helida Cunsurka Ilmaha

Si loo helo sumadda sawirka, waxaan isticmaalnaa:

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

Qaybaha Cunugga ee Badan

Waxaa jira munaasabado marka ay jiraan cunsurro dhowr ah oo isla waalidka ka mid ah sida walxaha liiska


  • Apple

  • Orange

  • Banana

Sida la arki karo, walxaha liiska shaqsiyadeed ma laha wax id ah oo la xidhiidha iyaga. Si loo helo cunsurka leh qoraalka ‘Oran’, waa inaan isticmaalnaa nth-of-type.

Tusaale:


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

Sidoo kale, si loo doorto cunugga u dambeeya, sida 'Banana', waxaan isticmaalnaa:

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

I firfircoonaan Ids

Waxaan u adeegsan karnaa xariijimaha xargaha si aan u helno walxaha leh Ids firfircoon.

Tusaalahan, dhammaan saddexda qaybood ee div waxay ku jiraan ereyga 'random'.

Ku sifo Ku bilow

Si aad u doorato tan ugu horeysa _ _ + _ | cunsurka, waxaan u adeegsan lahayn div oo macnaheedu yahay 'wuxuu ka bilaabmaa':

^=

Sifada Dhammaadka leh

Si aad u xulato ta labaad driver.findElement(By.cssSelector('div[id^='123']')); cunsurka, waxaan u adeegsan lahayn div oo macnaheedu yahay 'ku dhammaado':

$=

Sifada Ka kooban

Si loo xusho tii ugu dambeysay driver.findElement(By.cssSelector('div[id$='456']')); cunsurka aan isticmaali doonno div oo macnaheedu yahay 'sub-string'

*=

Waxaan sidoo kale isticmaali karnaa driver.findElement(By.cssSelector('div[id*='_pattern_']'));

contains

Akhrin Dheeraad ah: