在本文中,您将学习如何在 CircleCI 上创建和运行 Nightwatch 测试。

概述

CircleCI 是一个 CI/CD 平台,可用于创建自动化测试管道。CircleCI 可用于在相同实例或 BrowserStack 和 Sauce Labs 等云服务提供商上执行测试。

先决条件

  • CircleCI 帐户
  • 上传到 Git 的 Nightwatch 项目

设置指南

我们将使用 nightwatch-examples 仓库进行演示。现在,让我们按照以下步骤配置 CI。

步骤 1:设置 CircleCI 项目

将您的 CircleCI 帐户连接到 Github 后,单击左侧菜单中的“项目”,您将看到来自 Github 的存储库列表。

单击测试存储库旁边的“设置项目”。

Config.yml 对话框打开后,选择“带我到可以编辑的 config.yml 模板”选项,如下所示。

CircleCI config file

在下一个屏幕中,从列表中选择Node

步骤 2:更新 config.yml 文件,提交并运行管道

现在,您将看到可以编辑的 config.yml 文件。将以下文件内容复制到文件中。

# This config is equivalent to both the '.circleci/extended/orb-free.yml' and the base '.circleci/config.yml'
version: 2.1

# Orbs are reusable packages of CircleCI configuration that you may share across projects, enabling you to create encapsulated, parameterized commands, jobs, and executors that can be used across multiple projects.
# See: https://circleci.com/docs/2.0/orb-intro/
orbs:
  node: circleci/[email protected]
  browser-tools: circleci/[email protected]
jobs:
  test:
    docker:
      - image: cimg/node:lts-browsers
    steps:
      - checkout
      - browser-tools/install-browser-tools
      - node/install-packages
      - run:
          command: npm run test
      - store_test_results:
          path: /tests_output
workflows:
  e2e-test:
    jobs:
      - test

复制 config.yml 文件后,按下Commit and Run

让我们尝试了解配置文件的关键要点:-

  1. 我们使用 Node 和浏览器工具这两个 orb,它们是 Nightwatch 设置所需的。
  2. 我们使用预先安装浏览器的 docker 镜像。
  3. 在步骤下,我们首先签出分支,然后安装浏览器工具。
  4. 在下一步中,将安装 package.json 中的所有包,其中包括Nightwatch、驱动程序包和其他必需的包。
  5. 设置完成后,管道将触发测试。

步骤 3:查看结果

单击刚刚运行的管道构建,然后单击作业名称,即test。在Steps 选项卡下,参考npm run test 步骤以查看测试输出。

Circle CI Results