CSS
 Computer >> コンピューター >  >> プログラミング >> CSS

SeleniumでCSSセレクターをロケーターとして使用するにはどうすればよいですか?


SeleniumWebdriverのロケーターCSSSelectorを使用して要素を見つけることができます。 CSS式を作成するための一般的な式は、tagname [attribute='value']です。 id属性とclass属性を利用してCSSを作成できます。

idの場合、CSS式の構文はtagname#idです。たとえば、CSS式--input#txt-locの場合、inputはタグ名であり、txt-locはid属性の値です。

クラス名の場合、CSS式の構文はtagname.classです。たとえば、CSS式--input.txt-clsの場合、inputはタグ名であり、txt-clsはクラス属性の値です。

Web要素要素(親)のサブ要素(子)がn個あり、n番目の子を検索する場合、CSS式の構文はnth-of-type(n)です。

SeleniumでCSSセレクターをロケーターとして使用するにはどうすればよいですか?

上記のhtmlで、親ulの4番目のli、つまりテキストを持つアンカー要素(Questions and Answers)を見つけたい場合、CSSはul.reading li:nth-​​of-type(4)である必要があります。同様に、最後の子を識別するには、CSSはul.reading li:last-childである必要があります。

動的な値を持つ属性の場合、記号^ =を使用して、属性値が特定のテキストで始まる要素を識別できます。たとえば、input [name ^ ='qa1'] [ここで、inputはタグ名であり、name属性の値はqa1で始まります]。

動的な値を持つ属性の場合、記号$ =を使用して、属性値が特定のテキストで終わる要素を識別できます。たとえば、input [class $ ='loc'] [ここで、inputはタグ名であり、class属性の値はlo​​cで終わります]。

動的な値を持つ属性の場合、symbol * =を使用して、属性値に特定のサブストリングがある要素を識別できます。たとえば、input [name * ='sub'] [ここで、inputはタグ名であり、name属性の値にはサブストリングsubが含まれています]。

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import java.util.concurrent.TimeUnit;
public class CSSLocator{
   public static void main(String[] args) {
      System.setProperty("webdriver.gecko.driver",
      "C:\\Users\\ghs6kor\\Desktop\\Java\\geckodriver.exe");
      WebDriver driver = new FirefoxDriver();
      //implicit wait
      driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
      //URL launch
      driver.get("https://www.linkedin.com/");
      //identify element
      WebElement m = driver.
      findElement(By.cssSelector("input[id='session_key']"));
      //enter text
      m.sendKeys("Java");
      String s = m.getAttribute("value");
      System.out.println("Attribute value: " + s);
      //close browser
      driver.close();
   }
}

  1. 要素のスタイル設定にCSSセレクターを使用するにはどうすればよいですか?

    CSSセレクターを使用すると、好みに基づいて目的の要素を具体的にスタイル設定できます。 HTMLDOMの要素を選択するにはさまざまな方法があります。 構文 CSSセレクターの構文は次のとおりです- Selector {    /*declarations*/ } 次の例は、スタイリング要素のCSSセレクターを示しています- 例 <!DOCTYPE html> <html> <head> <style> #one {    filter: invert(85%); } </style> <

  2. CSSイメージスプライトを作成して使用する方法

    CSS Image Spriteは、ドキュメントページ内のすべての画像を組み合わせた画像ファイルです。画像リソースは一度だけロードする必要があるため、画像スプライトが付属していると便利です。 CSSの背景を使用して、結合された画像のさまざまな部分を表示できます。 CSS画像スプライトの例を見てみましょう- 例 <!DOCTYPE html> <html> <head> <title></title> <style type="text/css"> .sprite {    back