将 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 Technology Radar,Nightwatch 已成为更广泛的自动化测试行业中公认的品牌。
我们旨在提供一个开箱即用且功能齐全的工具,而不是构建一个支持大量插件和自定义功能的高度灵活的工具。
我们认为,为了编写测试,你应该只专注于编写测试,而不必添加多个外部插件和依赖项。根据我们的经验,这通常会导致更多的时间花在维护依赖项和解决配置问题上,而不是编写实际的测试。
但是,我们提供了机制来在需要时 扩展现有 API 命令和断言,你也可以 以编程方式使用 Nightwatch。我们还尽力确保 Nightwatch 遵循行业公认的做法,并尝试与其他现有工具兼容。
你甚至可以在 Nightwatch 中编写 Node.js 单元测试 来测试你的后端 API。这些测试使用相同的断言库、语法和运行器。我们甚至可以在同一个测试运行中将端到端测试与单元/集成测试结合起来。
此版本添加了对最新 Microsoft Edge 浏览器的集成支持,改进了并行支持,以及其他一些功能和改进(例如使 API 能够与链式调用和 Promise 协同工作)。
我们正在努力发布下一个主要版本,该版本将基于 Selenium Webdriver 构建,这将使测试运行明显更加稳定和可靠。
我们还将添加一些新功能,例如对 Chrome Dev Tools 协议、文件上传和新 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 在 Ansible 的基础上提供了一个基于 Web 的用户界面、REST API 和任务引擎。AWX 使用 Python 构建,并使用 Nightwatch **v0.9**。
Worldview 是一个用于浏览全球全分辨率卫星图像的交互式界面。使用 React 构建,并使用 Nightwatch **v0.9**。
WebRTC 示例 这是一个小型示例的集合,演示了 WebRTC API 的各个部分。使用 Nightwatch **v1.1**。
针对 BrowserStack Automate 基础设施运行 Nightwatch 测试的示例。使用 Nightwatch **v1.0**
随时 告知我们 应该在此页面上列出的任何文章或开源项目。