千家信息网

Java中Selenium函数的使用

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,环境本项目是在 MacOS 下开发的,涉及到的工具是平台无关的,对于 Linux 和 Windows 桌面系统应该也同样适用。在开始本例之前请确保如下工具已经正确的安装,更新到最新版本,并进行正确的配
千家信息网最后更新 2026年11月01日Java中Selenium函数的使用

环境

本项目是在 MacOS 下开发的,涉及到的工具是平台无关的,对于 Linux 和 Windows 桌面系统应该也同样适用。在开始本例之前请确保如下工具已经正确的安装,更新到最新版本,并进行正确的配置。

  • Docker
  • Fun
  • Fcli

Fun 和 Fcli 工具依赖于 docker 来模拟本地环境。

对于 MacOS 用户可以使用 homebrew 进行安装:

brew cask install dockerbrew tap vangie/formulabrew install funbrew install fcli

Windows 和 Linux 用户安装请参考:

  1. https://github.com/aliyun/fun/blob/master/docs/usage/installation.md
  2. https://github.com/aliyun/fcli/releases

安装好后,记得先执行 fun config 初始化一下配置。

注意, 如果你已经安装过了 fun,确保 fun 的版本在 2.10.2 以上。

$ fun --version2.10.1

快速开始

初始化

使用 fun init 命令可以快捷地将本模板项目初始化到本地。

fun init vangie/selenium-java-example

安装依赖

$ fun install...

本地测试

测试代码 ChromeDemo 的内容为:

public class ChromeDemo implements StreamRequestHandler {    public void handleRequest(InputStream inputStream,                              OutputStream outputStream,                              Context context) throws IOException {        System.setProperty("webdriver.chrome.driver", "/code/chromedriver");        ChromeOptions options = new ChromeOptions();        options.setBinary("/code/headless-chromium");        options.addArguments("--disable-extensions"); // disabling extensions        options.addArguments("--disable-gpu"); // applicable to windows os only        options.addArguments("--disable-dev-shm-usage"); // overcome limited resource problems        options.addArguments("--no-sandbox"); // Bypass OS security model        options.addArguments("--headless");        WebDriver driver = new ChromeDriver(options);        driver.get("https://ide.fc.aliyun.com");        outputStream.write(("Page title is: " + driver.getTitle() + "\n").getBytes());        driver.quit();    }}

本地运行

$ mvn package && fun local invoke selenium...FC Invoke Start RequestId: 68c83b4c-b053-479c-9b0e-9503582ccb56handle user request is com.aliyun.fc.selenium.ChromeDemo::handleRequestcache is null!Starting ChromeDriver 2.35.528139 (47ead77cb35ad2a9a83248b292151462a66cd881) on port 20652Only local connections are allowed.Mar 05, 2019 11:34:27 AM org.openqa.selenium.remote.ProtocolHandshake createSessionINFO: Detected dialect: OSSPage title is: 云端集成开发环境FC Invoke End RequestId: 68c83b4c-b053-479c-9b0e-9503582ccb56RequestId: 68c83b4c-b053-479c-9b0e-9503582ccb56          Billed Duration: 5265 ms        Memory Size: 1998 MB    Max Memory Used: 240 MB

部署

$ mvn package && fun deploy

执行

$  fcli function invoke -s chrome -f selenium  Page title is: 云端集成开发环境
环境 工具 开发 云端 版本 用户 集成开发 项目 测试 配置 代码 内容 命令 平台 是在 桌面 模板 系统 装好 参考 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 有格互联网科技 互联网是不是新科技 互联网科技金融公司 平安科技 互联网 互联网科技公司官网 善班互联网科技有限公司 四川狮子座互联网科技 科技类的互联网平台 互联网科技公司招聘 互联网科技博主是什么意思 黑科技闪耀互联网之光 华夏互联网科技业 长沙茂晟互联网科技有限公司 山东子淼互联网科技有限公司 2021互联网科技公司排名 广东工业互联网大赛深圳学泰科技 深圳无忧互联网科技 本届互联网大会上的黑科技 青岛易易互联网科技 前海云享互联网科技 互联网的科技 深圳恒合互联网络科技有限公司 互联网巨头科技公司 互联网金融中的现代科技 成都互联网科技公司工作好不好 浙南科技城互联网大厦建设工程 东莞新华互联网科技学校 互联网第三次科技革命特征 上海万顺科技互联网有限公司招聘 河南商务圈互联网科技有限公司
0