51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1520|回复: 1
打印 上一主题 下一主题

Selenium八大元素定位方式

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2018-1-24 16:01:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Selenium八大元素定位方式
1、根据id来定位:
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

public class Firefox {
    public static void main(String[] args) throws InterruptedException {
        System.setProperty("webdriver.firefox.marionette", "src/main/resourcec/geckodriver.exe");
        String baiduHomePage;
        baiduHomePage = "https://www.baidu.com/";

        WebDriver driver;
        driver = new FirefoxDriver();
        driver.manage().window().maximize();
        driver.get(baiduHomePage);
        Thread.sleep(2000);
        assert driver.getTitle().equals("百度一下,你就知道");

        driver.findElement(By.id("kw")).sendKeys("Selenium");
        //根据id来定位输入框
        driver.findElement(By.id("su")).click();
        //根据id来定位搜索按钮
        Thread.sleep(2000);
        assert driver.getTitle().equals("Selenium_百度搜索");

        driver.close();
        driver.quit();
    }
}

2、根据name来定位:driver.findElement(By.name("wd")).sendKeys("Selenium");
//根据name来定位输入框

3、根据className来定位:driver.findElement(By.className("s_ipt")).sendKeys("Selenium");
//根据className来定位输入框
driver.findElement(By.className("s_btn")).click();
//根据className来定位搜索按钮

4、根据xpath来定位;driver.findElement(By.xpath(".//*[@id='kw']")).sendKeys("Selenium");
//根据xpath来定位输入框
driver.findElement(By.xpath(".//*[@id='su']")).click();
//根据xpath来定位搜索按钮

5、根据cssSelector来定位:driver.findElement(By.cssSelector("#kw")).sendKeys("Selenium");
//根据cssSelector来定位输入框
driver.findElement(By.cssSelector("#su")).click();
//根据cssSelector来定位搜索按钮

6、根据tagName来定位:driver.findElements(By.tagName("input")).get(7).sendKeys("Selenium");
//根据tagName来定位输入框
driver.findElements(By.tagName("input")).get(8).click();
//根据tagName来定位搜索按钮
7、根据linkText来定位新:driver.findElement(By.linkText("新闻")).click();
//根据linkText来定位新闻链接
Thread.sleep(2000);
assert driver.getTitle().equals("百度新闻搜索——全球最大的中文新闻平台");

8、根据partialLinkText来定位:driver.findElement(By.partialLinkText("闻")).click();
//根据partialLinkText来定位新闻链接
Thread.sleep(2000);
assert driver.getTitle().equals("百度新闻搜索——全球最大的中文新闻平台");


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-18 00:29 , Processed in 0.060810 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表