最是人间留不住,朱颜辞镜花辞树。这篇文章主要讲述Selenium 4.0 Alpha更新实践相关的知识,希望能为你提供帮助。
上期讲到了Selenium 4.0 Alpha更新日志,这次来实践一下更新内容。
- DevTools操作更加方便。
- 窗口管理不在依赖一个driver
- 相对定位器功能丰富
- 补充全屏快照的功能
//创建驱动drive
WebDriver driver = new ChromeDriver();
Connection connection = null;
DevTools devtools = new DevTools(connection);
devtools.createSession();
String message = "chrome 浏览器测试Demo!";
driver.get("https:www.bing.cn");
//JS打印信息
javascriptExecutor js = (javascriptExecutor) driver;
js.executeScript("console.log(" + message + ") ; ");
//创建驱动driveWebDriver driver = new ChromeDriver(); Connection connection = null; DevTools devtools = new DevTools(connection); devtools.createSession(); String message = "chrome 浏览器测试Demo!"; driver.get("https:www.bing.cn"); //JS打印信息JavascriptExecutor js = (JavascriptExecutor) driver; js.executeScript("console.log(" + message + ") ; ");
上面的代码创建到给定URL的会话,并执行javascript打印消息。DevTools是一个类,具有用于获取开发人员选项的方法的类。
DevTools还可以用于性能评估并获取页面加载时间。
更好的窗口和标签管理【Selenium 4.0 Alpha更新实践】Selenium 4现在具有可以同时在两个不同的窗口上工作的功能。当我们要导航到新窗口(或选项卡)并在那里打开另一个URL并执行某些操作时,此功能特别有用。
WebDriver window2 = driver.switchTo().newWindow(WindowType.TAB);
window2.get("url");
WebDriver window1 = driver.switchTo().newWindow(WindowType.WINDOW);
window1.get("url");
WebDriver window2 = driver.switchTo().newWindow(WindowType.TAB); window2.get("url"); WebDriver window1 = driver.switchTo().newWindow(WindowType.WINDOW); window1.get("url");
?
?newWindow()?
?方法根据其参数中指定的WindowType打开一个新窗口或选项卡。相对定位器在Selenium 4 alpha版本中,我们还可以获得相对于任何其他定位器的定位器。
toLeftOf():位于指定元素左侧的元素。toRightOf():位于指定元素右侧的元素。above():相对于指定元素位于上方的元素。below():相对于指定元素位于下方的元素。near():元素距离指定元素最多50个像素。像素值可以修改。
全屏快照现在,我们可以在Firefox中使用?
?getFullPageScreenshotAs()?
?方法获取完整的屏幕截图。但是,我们无需将其类型转换为??TakesScreenshot?
?界面,而是需要将其类型转换为FirefoxDriver实例。??File src = https://www.songbingjia.com/android/((FirefoxDriver) driver).getFullPageScreenshotAs(OutputType.FILE);
?
?可能会有一些更有趣的功能和改进,因此继续探索!
文章图片
推荐阅读
- 线上服务器too many open files 问题排查记录
- 上古版本CentOS 6 yum换源教程 解决404 Not Found #yyds干货盘点#
- vim快捷键
- 在WordPress中根据季节交换头版
- Wpbakey插件/ Visual Composer中突然出现错误
- 无法在WordPress中应用Styles.css
- 将WordPress更改为RTL时出现奇怪的空白
- style.css在wordpress中不起作用
- 静态HTML模板转换为WordPress-JavaScript和Jquery问题