npm 包 @bazel/protractor 使用教程

阅读时长 5 分钟读完

在现代的前端开发中,使用自动化测试已成为必备的技能。而其中一个重要的工具就是 Protractor,一个专为 Angular 应用定制的自动化测试工具。但是对于使用 Bazel 构建的项目如何运行 Protractor,这一点并不是那么明显。因此本篇文章将介绍如何使用 npm 包 @bazel/protractor 来运行 Protractor 测试。

安装 @bazel/protractor

在使用 @bazel/protractor 前,需要先安装 Bazel。如果尚未安装,请参考 Bazel 安装指南 进行安装。

在安装完 Bazel 后,可以使用下面的命令安装 @bazel/protractor:

配置 BUILD 文件

  1. 在 BUILD 文件中添加以下内容:
-- -------------------- ---- -------
-------------------------------------------- --------------------------------

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

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

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

其中:

  • bazel_protractor_repositories 包含了全部所需的 repo(如 webdrivers)。如果你需要使用其他外部库,比如 @angular/material,也需要添加相应的内容。
  • protractor_test 定义了一个 protractor 运行 target,在这里指定了 e2e 测试文件的位置和 protractor.conf.js 的位置。
  1. 然后在 protractor.conf.js 文件中添加以下内容:

其中,process.env.KARMA_BROWSER || 'chrome' 表示将环境变量 KARMA_BROWSER 设置为 Chrome 浏览器。可以在运行测试之前在终端中设置 KARMA_BROWSER 环境变量,或者使用默认的 Chrome 浏览器。

运行测试

可以使用 Bazel 的 bazel test 命令来运行测试,例如:

这里的 //:protractor 表示运行在 BUILD 文件中定义的 protractor target。

示例代码

以下是一个完整的示例代码供参考:

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

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

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

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

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

总结

使用 @bazel/protractor 可以让在 Bazel 构建的项目中运行 Angular 应用的 E2E 测试更加容易。通过合理配置 BUILD 文件和 protractor.conf.js 文件,我们可以运行 Protractor,并在终端中观察测试的结果。

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