更多内容请关注我的 Selenium 自动化 专栏:
平时我们在使用浏览器时,通常会打开多个窗口,然后再多个窗口中来回切换,这用鼠标点击或用键盘快捷键是很容易实现的。
但如果我们用 Selenium 自动化时呢?
回答是当然也可以。
1. 默认打开一个窗口
只要我们稍微留意就会发现,多次调用 get()
其实都是打开的同一个窗口,包括 back()
和 forward()
都是在同一个窗口中。
driver.get("https://www.w3ccoo.com/html/html_forms.html");
Thread.sleep(3000);
driver.get("https://www.baidu.com");
Thread.sleep(3000);
可以看到,两个网页是在同一个窗口中打开的。
2. 打开一个新窗口
那么我们怎么打开一个新窗口呢?
遗憾的时,Selenium WebDriver 并没有直接提供一个类似 newGet()
这样的方法打开新窗口。所以我们只能另辟蹊径。
这就是使用JS。对的,Selenium 也可以执行JavaScript!
driver.get("https://www.w3ccoo.com/html/html_forms.html");
Thread.sleep(3000