
将 API 测试添加到您的 Nightwatch 测试自动化
当被测软件公开 REST API 端点时,直接测试 API 比通过 UI 进行测试更有效。
Nightwatch 于 2014 年 1 月发布,最初由 Andrei Rusu 创建,旨在以一种简单的方式编写自动化 UI 测试,并且尽可能减少配置和额外的库。
发布后不久,Nightwatch 就出现了稳定的增长,现在已成为 Web 应用程序和网站最受欢迎的 Node.js 端到端测试解决方案之一。
从 Evan You(Vue.js 的创建者)在 第一个 Github Issue 中提出的问题,以及与 Vue.js 框架的无缝集成,到被收录于 2017 年 ThoughtWorks 技术雷达,Nightwatch 已成为更广泛的自动化测试行业中一个知名的品牌。
我们不打算构建一个支持大量插件和定制的灵活工具,而是旨在提供一个开箱即用的工具,其中包含您需要的一切。
我们相信,为了编写测试,您应该只专注于编写测试,而不必添加多个外部插件和依赖项。根据我们的经验,这通常会导致越来越多的时间花在维护依赖项和解决配置问题上,而不是编写实际的测试。
但是,我们确实提供了一些机制,以便在需要时 扩展现有 API 命令和断言,您也可以 以编程方式使用 Nightwatch。我们还尽力确保 Nightwatch 遵循业界认可的实践,并尝试与其他现有工具兼容。
您甚至可以在 Nightwatch 中编写 Node.js 单元测试 来测试您的后端 API。这些测试使用相同的断言库、相同的语法和运行程序。我们甚至可以在同一个测试运行中将端到端测试与单元/集成测试相结合。
此版本增加了对最新 Microsoft Edge 浏览器的集成支持,改进了并行处理支持,以及其他一些功能和改进(例如,使 API 能够同时使用链式调用和 Promise)。
我们正在努力发布下一个主要版本,该版本将基于 Selenium Webdriver 构建,这将使测试运行更加稳定和可靠。
我们还将添加一些新功能,例如支持 Chrome Dev Tools Protocol、文件上传和新的 API。
有关文档的问题,例如不一致、错别字或错误,可以在 Docs Github 仓库 上报告。
如果您想贡献 API 命令示例,您可以在以下文件夹中添加它们:github.com/nightwatchjs/nightwatch-docs/tree/main/api/method。这些示例会自动构建到各个 API 命令页面中。
例如,clearValue 页面构建自:github.com/nightwatchjs/nightwatch-docs/blob/main/api/method/clearValue.md。
鼓励您在 Github Discussions 页面上提出您可能遇到的任何有关 Nightwatch 或其 API 用法的问题。对于错误报告,请在 Github 上提交新的 错误报告。功能请求 也受欢迎。
新贡献者:请也查看这些资源
我们在 Discord 上设置了一个新的聊天服务器,您可以在那里与 Nightwatch 团队成员和其他用户聊天。请使用此链接加入。
https://discord.gg/SN8Da2X
我们在 Twitter 上的账号是 @nightwatchjs,我们会发布有关版本和其他类型公告的更新。
此外,您可以使用 StackOverflow Nightwatch.js 标签。
来自更广泛的 Nightwatch 社区的精选文章、指南和视频教程列表。请注意,此处列出的视频和文章并非由 Nightwatch 团队创建,我们不能保证其完全准确。
当被测软件公开 REST API 端点时,直接测试 API 比通过 UI 进行测试更有效。
本指南将逐步向您展示如何创建启用 TypeScript 的 Nightwatch 自动化测试套件。
来自 Test Automation University 的一门完整视频课程,教你如何使用 Nightwatch 自动化 Web UI 测试。
关于如何重构 Nightwatch 测试用例以使用页面对象模型 API 和页面命令的逐步指南。
学习如何使用 Nightwatch 和 Axe 可访问性工具 编写自动化可访问性测试。本教程将解释如何为 Web 内容可访问性指南编写断言,以及如何检测违反可访问性规则的元素。
Nightwatch 协作者 Domenico 解释了为什么端到端测试(以及其他形式的测试)对他来说是一个重要的话题。对测试金字塔概念的很好解释,以及对自动化测试的良好介绍。
Domenico 演示了如何使用 Browserstack 云测试平台运行使用 Nightwatch 的端到端测试。您可以在他的 Youtube 频道 上找到其他与 Nightwatch 相关的编码视频。
关于如何使用 Nightwatch 提高 Express 应用程序安全性的扩展指南。
Percy.io 工程师 David Jones 介绍了如何在您的 Nightwatch.js 测试中添加 Percy 快照以进行自动化的视觉测试。
流行的 Drupal CMS 的核心 JavaScript 维护者 Sally Young 描述了在 Drupal 8.6 中集成 Nightwatch 的过程。
为 Firefox 公共数据报告 提供支持的平台,该报告是关于 Firefox 桌面用户活动、行为和硬件配置的每周公开报告。使用 React 构建,并使用 Nightwatch v1.2。
AWX 提供了一个基于 Web 的用户界面、REST API 和任务引擎,构建在 Ansible 之上。AWX 使用 Python 构建,并使用 Nightwatch v0.9。
Worldview 是一个用于浏览全球全分辨率卫星图像的交互式界面。使用 React 构建,并使用 Nightwatch v0.9。
WebRTC 示例 这是一个展示 WebRTC API 各个部分的小示例集合。使用 Nightwatch v1.1。
针对 BrowserStack Automate 基础设施运行 Nightwatch 测试的示例。使用 Nightwatch v1.0
欢迎您 告知我们 应该在此页面上列出的任何文章或开源项目。