【selenium自动化】第二篇,八种元素定位

【selenium自动化】第二篇,八种元素定位,第1张

Selenium有八种元素定位方式。




一、通过id
如图所示为百度搜索框,输入内容区域的id为:kw(key word)

    public static void main(String[] args) {
        System.setProperty("webdriver.chrome.driver", "/Users/aaa/selenium/Project/chromedriver");
        WebDriver webDriver = new ChromeDriver();
        webDriver.get("https://www.baidu.com/");
        WebElement kw = webDriver.findElement(By.id("kw"));
        kw.sendKeys("input : sendKeys");
    }

测试结果如下:


二、通过name

    public static void main(String[] args) {
        System.setProperty("webdriver.chrome.driver", "chromedriver");
        WebDriver webDriver = new ChromeDriver();
        webDriver.get("https://www.baidu.com/");
        WebElement kw = webDriver.findElement(By.name("wd"));
        kw.sendKeys("input : sendKeys");
    }


三、通过className

    public static void main(String[] args) {
        System.setProperty("webdriver.chrome.driver", "chromedriver");
        WebDriver webDriver = new ChromeDriver();
        webDriver.get("https://www.baidu.com/");
       // WebElement kw = webDriver.findElement(By.className("s_ipt"));
        //className也可以使用部分,如
        WebElement kw = webDriver.findElement(By.className("s_ipt"));
        kw.sendKeys("input : sendKeys");
    }

如果className有空格,需要用xpath

WebElement kw = webDriver.findElement(By.xpath("//*[@class=\"fm  has-soutu has-voice\"]"));


四、通过linkText

WebElement kw = webDriver.findElement(By.linkText("换一换"));


五、通过partialLinkText

WebElement kw = webDriver.findElement(By.partialLinkText("换一换"));


六、通过css

WebElement kw = webDriver.findElement(By.cssSelector("#kw"));


七、通过xpath

WebElement kw = webDriver.findElement(By.xpath("//*[@id=\"kw\"]"));


八、通过tagName

WebElement kw = webDriver.findElement(By.tagName("body"));

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/571314.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-09
下一篇 2022-04-09

发表评论

登录后才能评论

评论列表(0条)

保存