selenium+java实现web自动化例子(附.打开多个选项卡并可切换操作)

(简单记录,有不正确的地方请指出) selenium+java可以实现对web页面的自动化控制,在公司内部比较稳定、页面迭代较少的后台web系统使用时非常有效

web自动化收益最大化的情况

    1.多更新于后端,前端页面迭代较少

    2.在日常迭代中页面改动小

    3.对新系统最好有一定的复用性、整合度高

整体说明

web自动化相较于app自动化比较简单,只需要导入jar包和浏览器驱动

常用的浏览器有谷歌和火狐,都有独立的驱动程序。驱动放在浏览器安装目录下

我下载的是chromedriver.exe驱动,注意驱动和自己浏览器的版本要匹配(我记得最早接触的时候还踩过jar包版本和浏览器版本不兼容的坑,已经很久了,具体情况已经忘记,可以注意下)


驱动存放截图
项目结构


整个代码以及注释

public void getLogin_Tieba(){

System.out.print("开始web自动化!!");

System.setProperty("webdriver.chrome.driver", "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chromedriver.exe");

        WebDriver driver = new ChromeDriver();

driver.get("https://www.baidu.com/");

        WebElement searchBox=driver.findElement(By.linkText("贴吧"));

        searchBox.click();

        try {

Thread.sleep(5000);

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

        WebElement searchBox1=driver.findElement(By.linkText("登录"));

        searchBox1.click();

        try {

Thread.sleep(5000);

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

        WebElement searchP=driver.findElement(By.id("TANGRAM__PSP_10__footerULoginBtn"));

        searchP.click();

        WebElement searchBox2=driver.findElement(By.id("TANGRAM__PSP_10__userName"));

        searchBox2.sendKeys("18228013236");

        WebElement searchBox3=driver.findElement(By.id("TANGRAM__PSP_10__password"));

        searchBox3.sendKeys("abcdefg123");

        WebElement searchBox4=driver.findElement(By.id("TANGRAM__PSP_10__submit"));

        searchBox4.click();

try {

Thread.sleep(10000);

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

driver.quit();

}


代码截图

代码内容解释

控件的操作,在appium+java实际例子中有详细说明,这里就不累述

添加驱动:System.setProperty("webdriver.chrome.driver", "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chromedriver.exe");

创建驱动对象:WebDriver driver = new ChromeDriver();如果是火狐则需要调整WebDriver driver = new FirefoxDriver();

打开指定地址:driver.get("https://www.baidu.com/");

根据控件Test属性值获取控件,并创建对象:WebElement searchBox=driver.findElement(By.linkText("贴吧"));

执行单击事件:searchBox.click();


打开多个选项卡并可切换不同选项卡进行操作

第一步、先定义好需要用到的url

第二步、创建Robot对象,模拟按键操作,达到打开新选项卡的目的

第三步、获得所有选项卡的句柄,再定位进行操作

你可能感兴趣的:(selenium+java实现web自动化例子(附.打开多个选项卡并可切换操作))