Selenium 在 nw 客户端上做 UI 自动化

不舍昼夜 · 2017年03月10日 · 最后由 long 回复于 2019年06月18日 · 2879 次阅读

前言

由于公司把 web 程序打包成 windows 和 mac 的客户端程序,用户是需要安装客户端后才能使用的。

通常我们写 UI 自动化脚本都是基于浏览器 driver 来写的,那么怎么才能在客户端是做 UI 自动化呢,答案很简单只需要换个 driver 即可。

以我们公司的客户端程序为例,我们的 pc 客户端是基于 nw 打包的,客户端的内核是 chrome,所以只需要去下载个基于 chromedriver 的 nw 壳,然后设置一下参数就好。

具体步骤

  • 第一步 需要先下载个nw+chromedriver的压缩包

  • 第二步 编写启动客户端的代码

    // 设置访问ChromeDriver的路径 windows系统就chromedriver.exe
    System.setProperty("webdriver.chrome.driver", "压缩包解压后的路径/chromedriver");
    ChromeOptions option = new ChromeOptions();
    //应用程序的package路径 windows系统就是package.nw
    option.addArguments("nwapp=/你应用程序的路径/app.nw");
    WebDriver driver = new ChromeDriver(option);
    
  • 第三步 编写启动客户端的代码

    //打开你应用程序的首页
    driver.get("你的链接");
    System.out.println(driver.getTitle());
    
共收到 3 条回复 时间 点赞

你好,我正在调研这个 nw 自动化。你使用 java 写的吗

leayn 回复

java、python 都一样,要下载带 chromedriver 的 nw 壳,启动参数指定一下路径即可 option.addArguments("nwapp=/你应用程序的路径/app.nw");

你好,按照你上面说的不能启动封装后的 exe 文件

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册