Selenium Danna Haɗin Ta Href Darajar

A cikin Selenium WebDriver, akwai hanyoyi da yawa da zamu iya hulɗa tare da abubuwan yanar gizo, kamar ta ID ɗin ID, XPath, CSS, da sauransu…

Hakanan zamu iya danna hanyoyin ta linkText ko partialLinkText. Waɗannan hanyoyin suna da kyau idan mun san rubutun da ake tsammani tsakanin Alamomi

Koyaya lokacin da muke yin gwaji na gida ko na duniya, ana fassara rubutu yadda yakamata kuma ba za mu iya amfani da linkText ko partialLinkText ba, musamman idan alamun anga ba su da wata ID ko aji.


A ce muna son danna mahadar da ke nuni zuwa profile.html,

mis


View Profile

Kamar yadda aka ambata a baya, zamu iya amfani

driver.findElement(By.linkText('View Profile')).click()

kuma hakan zai yi aiki, muddin muna kan shafi mai harshen Turanci.

Lokacin da muka canza harshe zuwa Jamusanci, alal misali, hanyar haɗin yanar gizonmu yanzu tana nunawa

Profil ansehen

Yanzu, layi


driver.findElement(By.linkText('View Profile')).click()

zai kasa saboda babu hanyar haɗi akan shafin bayanin martaba tare da wannan rubutun.

Hanya ɗaya da za a shawo kan wannan ita ce danna hanyar haɗi ta href darajar, saboda koda lokacin da shafin yanar gizon ya canza hanyar haɗin href yakamata ya nuna wuri ɗaya.

A takaice dai, haɓaka ƙasashen duniya ba zai tasiri tasirin hanyoyin ba.

WebDriver ba shi da wata hanya madaidaiciya kuma kai tsaye ta danna hanyar haɗi ta ƙimar href. Madadin haka, muna buƙatar samun duk hanyoyin haɗin yanar gizon, cire sifa ta href sannan kuma kwatanta ƙimar href da abin da muke tsammani.




Danna Link Ta hanyar href

A ce muna da waɗannan hanyoyin haɗi kuma muna son danna mahadar bayanan martaba

View Profile Transactions public void clickLinkByHref(String href) {
List anchors = driver.findElements(By.tagName('a');
Iterator i = anchors.iterator();
while(i.hasNext()) {
WebElement anchor = i.next();
if(anchor.getAttribute('href').contains(href)) {

anchor.click();

break;
}
} }

Sannan zamu iya amfani da clickLinkByHref('Profile')

sannan aikin da ke sama zai samo duk hanyoyin da ke shafin sannan kuma ya bi su idan ya sami hanyar haɗi wanda ya ƙunshi bayanin martaba, WebDriver zai danna mahaɗin.

Lura, idan muna da hanyoyi da yawa tare da bayanin kalma a cikin su, aikin da ke sama koyaushe zai danna farkon mahaɗin da ke ɗauke da kalmar kalmar. Zamu iya canza lambar da ke sama don hada wanne daga hanyoyin da muke son latsawa:


public void clickLinkByHref(String href, int position) {
List anchors = driver.findElements(By.tagName('a');
Iterator i = anchors.iterator();
int j = 0;
while(i.hasNext()) {
WebElement anchor = i.next();

if(anchor.getAttribute('href').contains(href)) {

j++;
}

if(anchor.getAttribute('href').contains(href)


&& j == position) {

anchor.click();

break;
}
} }

Kara karantawa: