npm 包 browzers 使用教程

阅读时长 5 分钟读完

什么是 browzers?

browzers 是一个基于 Node.js 和 Puppeteer 的库,可以帮助我们方便地进行网页自动化测试。使用 browzers 可以轻松模拟点击、输入等用户交互操作,并且获取网页的元素、截图等信息。

安装

在使用 browzers 之前,我们需要先安装 Node.js 和 npm。安装完成后,在终端中执行以下命令即可全局安装 browzers:

快速上手

打开网页

要打开一个网页,我们需要使用 browzers.launch 方法创建一个浏览器实例,并且调用其 goto 方法跳转到目标网址:

-- -------------------- ---- -------
----- - -------- - - --------------------

------ -- -- -
  ----- ------- - ----- ------------------
  ----- ---- - ----- ------------------

  ----- -------------------------------------

  -- -- - --------
  ----- --- ----------------- -- ------------------- -------
  ----- ----------------
-----

点击和填写表单

通过选择器可以快速定位页面元素,并且模拟点击、输入等用户行为:

获取页面信息

我们可以使用 evaluate 方法获取网页中的信息,例如:

进阶应用

隐藏浏览器界面

默认情况下,browzers 会启动一个带有界面的 Chromium 浏览器。但是在一些场景中,比如部署到服务器上,我们可能需要隐藏浏览器界面,这时候就可以使用 headless 参数:

并发执行

如果我们需要同时打开多个浏览器进行测试,可以使用 Promise.all 来实现并发执行:

-- -------------------- ---- -------
----- ---- - --------------------------- ------------------------- --------------------------
----- -------- - -------------- ----- -- -
  ----- ------- - ----- ------------------
  ----- ---- - ----- ------------------

  ----- ---------------
  -- -- ---------

  ----- ----------------
---

----- ----------------------

减少资源占用

当我们需要打开很多页面进行测试时,可能会占用过多的系统资源。为了减少资源占用,我们可以使用 puppeteer-cluster 库来管理多个浏览器实例:

-- -------------------- ---- -------
----- - ------- - - -----------------------------

----- ---- - --------------------------- ------------------------- --------------------------

------ -- -- -
  ----- ------- - ----- ----------------
    ------------ ----------------------------
    --------------- -- -- -------------
  ---

  ----- ------------
    -------------- --
      ------------------ -- ----- ----- --- -- -- -
        ----- ---------------
        -- -- ---------
      --
    -
  --

  ----- ---------------
  ----- ----------------
-----

总结

browzers 是一个方便的网页自动化测试工具,通过本文的介绍,我们可以学习到其基本用法和进阶应用。在编写测试脚本时,需要根据具体情况灵活运用各种方法和库,以达到高效、

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/39810

纠错
反馈