文档

Node.js测试构建

更新时间:

通过Node.js测试构建流水线,自动化进行检出代码、编译构建、运行单元测试、输出结果记录、测试统计等能力,减少人工干预,增强项目可见性,并且有效的日志能够帮助开发者更容易发现并解决存在问题。

步骤一:新建测试构建流水线

  1. 登录流水线Flow服务控制台,在控制台界面,请单击右侧上方新建流水线按钮

  2. 在弹出窗口页面,选择Java测试构建流水线模板,单击创建按钮。image

步骤二:配置流水线源

添加流水线源,根据需求选择合适的代码项目,此示例选择示例代码源NodeJS,添加完成。image

步骤三:配置测试构建

  1. 在流水线任务节点操作界面,请单击JavaScript代码扫描或者Node.js单元测试任务节点,在弹出的右侧编辑页面,配置基本参数。

    参数

    说明

    任务名称

    自定义任务名称。

    构建集群

    根据需求选择合适的默认公共或者私有构建集群。

    构建环境

    根据需求选择合适的构建环境。

    说明

    任务执行期间,流水线任务构建环境分配给用户使用,构建环境使用权限归属用户,任务执行脚本由用户自定义。

    下载流水线源

    根据需求选择下载流水线源的不同方式。

  2. 在任务节点JavaScript代码扫描任务编辑页面,任务步骤配置项,配置JavaScript代码扫描任务相关参数。

    参数

    说明

    步骤名称

    自定义步骤名称。

    是否使用本地 ESLint 配置

    如果勾选是否使用本地 ESLint 配置使用仓库自身的 ESLint 配置,而不是系统规则集进行扫描。启用该选项后,在下方配置参数运行本地 ESLint 配置所需依赖选项中声明所需依赖,且确保仓库根目录有 .eslintrc.* 文件。

    请选择 Node 版本

    根据项目需求选择合适的Node版本。

    运行本地 ESLint 配置所需依赖

    在此声明运行仓库自身 ESLint 配置所需的所有依赖,依赖间用空格间隔,这个字段将直接跟在 npm install 后面进行安装。例如本地使用 eslint-config-standard,此处依赖需要写 eslint eslint-config-standard eslint-plugin-standard eslint-plugin-promise eslint-plugin-import eslint-plugin-node;当配置为*时,则默认安装package.json中声明的全部依赖。

    说明

    此配置选项仅在是否使用本地 ESLint 配置选项勾选开启后有效。

    开启增量扫描模式

    如果未开启增量扫描模式,则对全量代码进行扫描。

    排除子目录

    根据需求选择被排除在扫描范围之外的目录或文件,可参考gitignore配置(例如test/)。

    红线信息

    根据条件设置判定本任务是成功还是失败。

    image

  3. 在任务节点Node.js单元测试任务编辑页面,任务步骤配置项,配置Node.js单元测试任务相关参数。

    参数

    说明

    步骤名称

    自定义步骤名称。

    版本选择方式

    根据需求可以从预置版本中选择、输入指定版本,或者使用代码库中 .nvmrc 文件中的版本。

    说明

    如果 .nvmrc 文件存在的话,则无论选择哪个选项都会使用 .nvmrc 文件。

    请选择 Node 版本

    根据需求选择预置的 node 版本。

    测试命令

    根据需求设置NodeJS单元测试命令。

    测试报告目录

    测试报告目录为测试命令执行后生成的测试报告所在目录(例如target/site)。

    测试报告文件

    测试报告文件为JSON测试报告文件名称(例如mochawesome.json)。

    测试报告入口文件

    测试报告入口文件为html测试报告入口文件名称(例如mochawesome.html)。

    红线信息

    根据条件设置判定本任务是成功还是失败。

    image

  4. 在流水线任务节点操作界面,请单击Node.js构建任务节点,在弹出的右侧编辑页面配置参数,查看任务步骤配置项Node.js构建任务,根据项目需求配置合适的构建命令。image

  5. 任务步骤配置项,配置构建物上传任务参数,提供以下两种方式可供选择。

    企业私有通用制品仓库

    • 选择配置企业私有通用制品仓库(制品将上传Packages统一管理)上传方式。

      参数

      说明

      步骤名称

      自定义步骤名称。

      上传方式

      根据需求选择合适的。

      仓库

      添加服务资源的链接,选择自定义的仓库。

      制品名称

      自定义构建物的名称,例如target1,用于区分多次构建产生的不同产出物,定义后在部署组件使用,建议使用动态变量形式设置。

      制品版本

      版本用于唯一标识您的制品文件,因此同一制品不允许推送重复版本。

      说明

      建议使用动态变量形式,比如:${DATETIME}。

      打包路径

      设置起始位置为项目文件夹的相对路径(如"target/"),可以设置多个文件路径。

      制品中包含打包路径的目录

      如果选中,则生成的压缩包中,包含完整的打包路径,否则仅包含文件。

      说明

      当选择设置了多个打包路径时,该值自动设置为true选中状态。

    • 任务配置参数参考图。image

    说明

    关于通用制品仓库,具体操作请参阅制品管理

    归档至云效公共存储空间

    • 选择配置归档至云效公共存储空间(供后续任务拉取并部署)上传方式。

      参数

      说明

      步骤名称

      自定义步骤名称。

      上传方式

      根据需求选择合适的。

      制品名称

      自定义构建物的名称,例如target1,用于区分多次构建产生的不同产出物,定义后在部署组件使用,建议使用动态变量形式设置。

      打包路径

      设置起始位置为项目文件夹的相对路径(如"target/"),可以设置多个文件路径。

      制品中包含打包路径的目录

      如果选中,则生成的压缩包中,包含完整的打包路径,否则仅包含文件。

      说明

      当选择设置了多个打包路径时,该值自动设置为true选中状态。

      image

步骤四:运行并查看目标流水线任务

  1. 在流水线Flow控制台界面我的流水线列表,单击目标流水线右侧image运行按钮,再单击目标流水线名称,查看流水线任务节点界面,在任务节点上,可以查看测试报告和日志。image

  2. 运行流水线任务完成后,在构建镜像任务节点,右下方单击日志,可以查看到流水线任务的执行过程结果日志。image

  3. 在制品仓库查看上传的构建物。