Ko te Selenium he huinga whare pukapuka e whakamahia ana hei whakatauira i nga taunekeneke a te kaiwhakamahi me te kaitirotiro.
Ka tuhia e nga kaiwhakamahi nga tuhinga hei whakamahi i nga wharepukapuka selenium hei whakatauira i nga taunekeneke tirotiro a nga kaiwhakamahi noa, penei i te whakatere ki tetahi whaarangi, paatene i te paatene me te whakakii i tetahi puka.
Ka whakamahia noa a Selenium i roto i nga kaupapa e hanga ana i nga tono o mua-mutunga (UI). Ka whakamahia hei whakamahi aunoa i nga ahuatanga e rite ana ki te taunekeneke a te kaiwhakamahi me te tono paetukutuku.
Hei whakamahi i te Selenium WebDriver i roto i tetahi kaupapa, me matua whakauru e maatau a Selenium Core me te WebDriver Binaries.
Me whakarite e taatau te ara mo ia taraiwa ka taea te whakahaere.
Mena kei te hiahia koe ki te whakamahi i a Selenium me Java, ko te huarahi ngawari ki te whakauru i te Selenium ma te whakawhirinaki a Maven ki to kaupapa pom.xml
konae:
org.seleniumhq.selenium
selenium-java
3.141.59
Hei whakahaere i nga whakamatautau Selenium i runga i te Google Chrome, i te Firefox tirotiro ranei, me whakauru e koe te whakawhirinaki whaitake ki to pom.xml
konae:
org.seleniumhq.selenium
selenium-chrome-driver
3.141.59
org.seleniumhq.selenium
selenium-firefox-driver
3.141.59
Hei whakamahi i nga whakamatautau Selenium i runga i te kaitirotiro, me matua whakauru e koe nga raihana tukutuku WebDriver e tika ana mo te kaitirotiro me nga ara tika kua whakatauhia.
Chrome Hei tautuhi i te huarahi ki te chromium ka taea te whakahaere i runga i te punaha MacOS, ka taea e koe te whakamahi:
$ export PATH='$PATH:/path/to/chromedriver'
Ka taea hoki e koe te whakarite i te huarahi ma te raupapa, kia tika ki te waehere:
System.setProperty('webdriver.chrome.driver', '/path/to/chromedriver');
Firefox - Geckodriver:
System.setProperty('webdriver.gecko.driver', '/path/to/geckodriver');
Tapa:
System.setProperty('webdriver.edge.driver', 'C:/path/to/MicrosoftWebDriver.exe');
Internet Explorer:
System.setProperty('webdriver.ie.driver', 'C:/path/to/IEDriver.exe');
I muri i te whakauru i a Selenium, i muri mai ko te whakaohooho i tetahi kaitarai tirotiro motuhake hei whakahaere i nga whakamatautau UI.
Ko nga whakamatautau Selenium kei te whakahaerehia ki runga i te waahanga kaiwhakamahi o tetahi tono ka hiahiatia he tirotiro hei mahi. Ka taea e taatau te tohu ko wai te kaitirotiro e hiahia ana maatau ki te whakahaere i o maatau whakamatautau ka whakatauhia te taraiwa tika.
Panui:Ka whakamahia noa nga whakamatautau Selenium mo Automation UI ka rere nga whakamatautau ki te kaitirotiro.import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; WebDriver driver = new ChromeDriver();
import org.openqa.selenium.WebDriver; import org.openqa.selenium.Firefox.FirefoxDriver; WebDriver driver = new FirefoxDriver();
import org.openqa.selenium.WebDriver; import org.openqa.selenium.edge.EdgeDriver; WebDriver driver = new EdgeDriver();
import org.openqa.selenium.WebDriver; import org.openqa.selenium.ie.InternetExplorerDriver; WebDriver driver = new InternetExplorerDriver();
Ka oti ana i a maatau tetahi huihuinga WebDriver kaha ka whakarewahia he tirotiro, ko te mea e whai ake nei ka hiahia maatau ki te haere ki tetahi whaarangi ka whakahaere i nga whakamatautau.
He maha nga tikanga whaihua a Selenium WebDriver hei taunekeneke me te kaitirotiro. Ka taea e taatau te whakahaere whakatere me te tiki korero mo te whaarangi o naianei.
Hei whakatere ki te URL e rua a maatau waahanga:
//The short form driver.get('https://devqa.io'); //The long form driver.navigate().to('https://devqa.io');
Te Selenium back()
tikanga whakarite i te paatene i te paatene o muri o te kaitirotiro.
driver.navigate().back();
Te Selenium forward()
tikanga whakarite i te paatene i te paatene o mua o te kaitirotiro.
driver.navigate().forward();
Te Selenium refresh()
tikanga whakarite i te paatene i te paatene whakahou a te tirotiro.
driver.navigate().refresh();
Kei te Selenium hoki nga tikanga hei tiki url o naianei, taitara whaarangi me te wharangi whaarangi.
Ka taea e taatau te tiki URL o te whaarangi o naianei:
driver.getCurrentUrl();
Ka taea te tiki taitara o te whaarangi o naianei:
driver.getTitle();
Ka taea e taatau te tiki korero mo te whaarangi inaianei:
driver.getPageSource();
Hei kati i te matapihi tirotiro o naianei:
driver.close();
Panui:Ka kati i te matapihi tirotiro kaore whakamutua te huihuinga a WebDriver.Hei whakamutu i te huihuinga WebDriver i te mutunga o te whakamahinga whakamatautau:
driver.quit();
Ko te tikanga whakamutu ka:
I mua i te kaha ki te taunekeneke me tetahi waahanga paetukutuku, me rapu e tatou te kaupapa ki te whaarangi html.
Ko tetahi o nga pukenga nui o te hangarau whakangao whakangao e mahi ana me a Selenium WebDriver, ko te kaha ki te whakamahi i nga tikanga tika hei kimi i nga waahanga o te whaarangi.
Hei tauira, mena ka hiahia paatohia te hono, whakaatuhia kua whakaatuhia mai he panui, kia paatohia ranei te paatene, me matua kimi e maatau te kaupapa.
Kei a Selenium WebDriver nga tikanga rereke hei kimi i nga waahanga o te whaarangi.
Ka whakaatuhia e te kairapu te mea e hiahia ana koe kia kite i tetahi whaarangi. I Java, ka hangaia e maatau he kaimana ma te whakamahi i te By
akomanga.
Hei tauira, mena i hiahia matou ki te rapu h1
huānga taitara i runga i te whaarangi, ka tuhi maatau
WebElement h1Element = driver.findElement(By.tagName('h1'));
Ranei, ki te hiahia matou ki te rapu i nga waahanga paratarafa katoa i runga i te whaarangi, ka whakamahia e matou
List pElements = driver.findElements(By.tagName('p'));
Ma tenei tikanga e rapu nga mea hei whakaatu ma te kuputuhi tika e whakaatuhia ana. Ko tenei tikanga te kairapu e manakohia ana mo nga hononga i runga i te whaarangi.
Hei tauira, me kii kei konei taatau hono hono i te whaarangi:
Forgotten Password
Na, ka taea te hono ki te:
driver.findElement(By.linkText('Forgotten Password'));
Ki te kore tatou e tino mohio ki nga kupu tika o te tuhinga hono engari e hiahia ana matou ki te rapu hononga hono ranei kei roto he kuputuhi i homai, ka taea e taatau te whakamahi
driver.findElement(By.partialLinkText('Forgotten '));
ranei
driver.findElement(By.partialLinkText('Password'));
Kia tupato koe ki te whakamahi i findElement
me tenei kairapu i te mea ka kitea etahi atu waahanga e rite ana te tuhi o te waahanga, na reira kaua tenei e whakamahia ki te rapu i tetahi waahanga noa iho. He pai ake te whakamahi ki te rapu i tetahi roopu o nga waahanga ma te whakamahi i te tikanga findElements
Ka kitea nga waahanga e ai ki te uara o te huanga akomanga. Ka taea tenei te whakamahi mo nga waahanga noa he huanga akomanga, engari ehara i te kaiwhakauru pai ki te whakamahi me te findElement
tikanga.
Ma te whakamahi i taua tauira i runga ake nei me te hononga, ko te hono 'Kupuhipa Kua wareware' kotahi akomanga CSS: btn
ka taea te whakamahi hei kimi
Forgotten Password
Na, ka taea te hono ki te:
driver.findElement(By.className('btn'));
Panui:Ka whakamahia te huanga akomanga hei whakariterite i nga whaarangi, no reira ka tupono ka rite tonu nga akomanga ki nga waahanga maha.Na te id, ka kitea nga huanga e te uara o o raatau huanga id. Ko te hono i te tauira i runga ake nei he id e taea ana e taatau te whakamahi.
Forgotten Password
Na, ka taea te hono ki te:
driver.findElement(By.id('change-password'));
Mena kei te waatea te huanga id, me whakamahi ko te whiringa tuatahi pai rawa atu.
Rapua nga huanga i te uara o o raatau huanga ingoa. Te tikanga ka taea noa te rapu kimi ahua hanga hanga: ,
,
, me
.
I runga i te whaarangi takiuru angitu, he mara whakauru taau ka penei:
Ka taea e taatau te rapu i te mara imeera ma te ingoa ingoa whakauru
driver.findElement(By.name('email'));
Ka kitea e tenei kairapu nga mea timatanga ma o raatau ingoa tohu HTML. I te mea he maha tonu nga whakamahinga tukurua o te nuinga o nga tohu, ehara i te mea pai ki te whakamahi i tenei tikanga ki te rapu i tetahi waahanga.
Ko te whakamahinga o te kimi i tetahi waahanga ma te ingoa tohu hei rapu i te upoko o te whaarangi, na te mea kotahi noa iho o enei:
Welcome to DevQA!
Ka taea e taatau te rapu i te mara taitara ma te ingoa tohu:
driver.findElement(By.tagName('h1'));
Ka kimi i nga huanga ma te miihini o te W3 CSS Selector engine. He kaha te kairapu kaihuri CSS no te mea ka taea te whakamahi ki te kimi i tetahi waahanga o te whaarangi.
Forgotten Password
Ka taea e taatau te rapu i te mara imeera ma te ingoa ingoa whakauru
driver.findElement(By.cssSelector('#change-password'));
Anei, #
tohu id o te waahanga. Ana ko te .
he tohu ki te huanga akomanga o te huanga.
Hei tauira:
driver.findElement(By.cssSelector('.btn'));
E pā ana:
Ko nga kairapu XPath te hunga whiriwhiri uaua rawa atu hei whakamahi. Me maarama ki te reo patai a XPath, no reira mena kaore koe e matatau ki taua reo paatai, ka uaua ki te rapu waahanga e whakamahi ana i nga paatai XPath.
Tirohia te tauira whakamahinga o te XPath mo tenei HTML:
Change Password
Ka taea e taatau te rapu i te mara imeera ma te ingoa ingoa whakauru
driver.findElement(By.xpath('//a[@id='change-password']'));
Ka kitea ana e maatau tetahi waahanga i runga i te whaarangi, ka taea e taatau te taunekeneke ki a ia ma te whakamahi i nga momo tikanga e whakawhiwhia ana e te selenium.
He maha nga huarahi a Selenium WebDriver hei taunekeneke me nga waahanga paetukutuku penei i te paatene i nga paatene tuku me te whakauru tuhinga ki nga waahanga whakauru.
Ko te WebElement
akomanga he maha nga tikanga ka taea e taatau ki te hono ki nga waahanga o te whaarangi. Ko nga mea noa ko:
click()
clear()
sendKeys()
submit()
Ko te click()
ka whakamahia te tikanga hei paato i tetahi waahanga paetukutuku penei i te hononga hono te paatene ranei.
Tauira:
Menu
WebElement mToggle = driver.findElement(By.id('menu-toggle')); mToggle.click();
Ko te clear()
tikanga whakawateatia te uara o te mara whakauru.
Tauira:
WebElement username = driver.findElement(By.id('username')); username.clear();
Ka whakamahia te sendKeys()
tikanga ki te whakauru i nga tohu ki roto i te pouaka mara whakauru.
Tauira:
WebElement username = driver.findElement(By.id('username')); username.sendKeys('jondoe');
Kei raro nei tetahi tauira mo te whakamahi i te Selenium ki te whakakii i tetahi pepa
username:
Last name:
WebElement username = driver.findElement(By.id('username'));
username.sendKeys('jondoe');
WebElement password = driver.findElement(By.id('password'));
password.sendKeys('secret');
WebElement submit = driver.findElement(By.cssSelector('input[type='submit']'));
submit.click();
Na kua oti ta maatau korero mo Selenium WebDriver, kua tae ki te waa ki te hanga i tetahi anga.
Akohia me pehea te hanga anga hianga mai i te wahanga.
Ko te waahanga tuatahi o te akoranga he taahiraa-i-te-ara ki te hanga i te anga WebDriver ki te whakamahi i te Java, Maven me te TestNG.
Ko te waahanga tuarua e arotahi ana ki te hanganga i nga whakamatautau selenium i runga i te Tauira Ahanoa Ahanui Wharangi.