1. Selenium的配置
1.1. 在项目中引入Selenium库
通过Maven加入。
org.seleniumhq.selenium
selenium-java
3.4.0
1.2. 下载chromedriver.exe
1.3. 在项目代码中加入chromedriver位置的配置
System.getProperties().setProperty("webdriver.chrome.driver", "chromedriver.exe");
2. 使用Selenium
2.1. Selenim语法
Selenium的语法和一些相关资料可以看这个博客,需要用哪里直接去查阅即可。
2.2. 智能等待
由于Java8的lambda表达式可以用于显示等待,以及我个人模拟登陆过程中的一些心得,我这里补充一点内容。sleep()方法和pageLoad方法我就不再介绍,因为不推荐使用。
2.2.1. 隐式等待
最常用的等待方式,也比较简单,是全局的。
webDriver.manage().timeouts().implicitlyWait(10,TimeUnit.SECONDS);
在设定的时间内Selenium会尝试获取所要求的元素,很简单,对于简单的查找元素等已经足够。但是如果需要监测一些元素的状态,那还需要调用显示等待的方法。
2.2.2. 显式等待
显示等待方法需要构造一个WebDriverWait对象,其接收webDriver和设定时长(单位秒)作为构造器参数构造。
当需要等待时,则调用它的until方法,until方法接收一个ExceptedCondi