Enable javascript in your browser for better experience. Need to know to enable it? Go here.
Last updated : Oct 27, 2021
NOT ON THE CURRENT EDITION
This blip is not on the current edition of the Radar. If it was on one of the last few editions, it is likely that it is still relevant. If the blip is older, it might no longer be relevant and our assessment might be different today. Unfortunately, we simply don't have the bandwidth to continuously review blips from previous editions of the Radar. Understand more
Oct 2021
Trial ?

Web 应用,特别是企业内部应用,通常分为两个部分。用户界面和小部分业务逻辑运行在浏览器中,而大部分业务逻辑、认证和持久化工作运行在服务器中。这两部分一般会通过在 HTTP 上传输 JSON 进行通讯。但请不要误认为这些端点(endpoint)是真正的 API,它们只是当应用要穿越两个运行环境时的实现细节而已。与此同时,它们也提供了一个合适的“接缝”,以便独立测试这些“零件”。当测试 JavaScript 部分时,可以通过像 Mountebank 这样的工具在网络层对其服务端进行打桩(stub)和模拟(mock)。Mock Service Worker 则提供了另一种选择——在浏览器中拦截各种请求,从而进一步简化了手工测试。和Mountebank一样,为了测试网络交互,Mock Service Worker 运行在浏览器外部的 Node.js 进程中。由于 GraphQL 的复杂性,此前我们一直难以对它在网络层进行手工模拟。而在 REST 交互之外, Mock Service Worker 对 GraphQL API 的模拟能力也为它锦上添花。

Oct 2020
Assess ?

Web 应用,特别是企业内部应用,通常分为两个部分。用户界面和小部分业务逻辑运行在浏览器中,而大部分业务逻辑、认证和持久化工作运行在服务器中。这两部分一般会通过在 HTTP 上传输 JSON 进行通讯。但请不要误认为这些端点(endpoint)是真正的 API,不,它们只是当应用要穿越两个运行环境时的实现细节而已。与此同时,它们也提供了一个合适的“接缝”,以便独立测试这些“零件”。当测试 JavaScript 部分时,可以通过像 Mountebank 这样的工具在网络层对其服务端进行打桩(stub)和模拟(mock)。还有一种方式是在浏览器中拦截各种请求。我们很喜欢这种由 Mock Service Worker 带来的方式,因为 Service Worker 是前端开发人员比较熟悉的抽象层。这种方法可以简化设置,并且执行得也更快。不过,由于这些测试没有测到真正的网络层,所以你还要实现一些端到端测试,才能得到一个健康的测试金字塔。

Published : Oct 28, 2020

Download the PDF

 

 

 

English | Português 

Sign up for the Technology Radar newsletter

 

 

Subscribe now

Visit our archive to read previous volumes