Sobes.tech
Junior

Selenium'da hangi konumlayıcılar var?

sobes.tech yapay zeka

AI'dan gelen yanıt

Selenium'da locatorlar, sayfadaki web öğelerini bulmak için kullanılan mekanizmalardır. Temel locator türleri:

  • ID: Bir öğeyi id özniteliği ile bulmayı sağlar. Eğer ID benzersiz ve stabliyse, en hızlı ve güvenilir yoldur.
  • Name: Bir öğeyi name özniteliği ile bulmayı sağlar. ID kadar güvenilir değildir çünkü name her zaman benzersiz olmayabilir.
  • Class Name: Öğeleri class özniteliği ile bulmayı sağlar. Birden fazla öğe aynı sınıfa sahip olabileceği için liste döner.
  • Tag Name: HTML etiketi adıyla (örneğin, div, a, input) öğeleri bulur. Liste döner.
  • Link Text: Bir <a> (bağlantı) öğesini, bağlantı metni tam olarak eşleşerek bulur.
  • Partial Link Text: Bir <a> öğesini, bağlantı metninin kısmi eşleşmesiyle bulur.
  • CSS Selector: CSS seçicileri kullanarak öğeleri bulmanın güçlü ve esnek bir yoludur. Özniteliklerin, etiketlerin, sınıfların, hiyerarşinin ve durumların kombinasyonlarıyla arama yapar.
  • XPath: XML/HTML belgesinin yapısında gezinerek öğeleri bulmanın en güçlü ve esnek yoludur. Karmaşık yollar oluşturarak, özniteliklere, içeriğe ve konuma göre arama yapar.

Kullanım örnekleri:

# Java
WebElement elementById = driver.findElement(By.id("myElementId"));
WebElement elementByName = driver.findElement(By.name("elementName"));
List<WebElement> elementsByClass = driver.findElements(By.className("myClass"));
WebElement elementByCss = driver.findElement(By.cssSelector("div.container > input[type='text']"));
WebElement elementByXpath = driver.findElement(By.xpath("//div[@id='parent']/button[text()='Submit']"));
# Python
element_by_id = driver.find_element(By.ID, "myElementId")
element_by_name = driver.find_element(By.NAME, "elementName")
elements_by_class = driver.find_elements(By.CLASS_NAME, "myClass")
element_by_css = driver.find_element(By.CSS_SELECTOR, "div.container > input[type='text']")
element_by_xpath = driver.find_element(By.XPATH, "//div[@id='parent']/button[text()='Submit']")

Locator seçimi, web öğesinin kararlılığı ve sayfa yapısına bağlıdır. ID, CSS Selector veya XPath kullanılması önerilir, uygun şekilde oluşturulmuşsa.