安装 Cypress 过程中,经常能遇到下载慢或者下载过程卡死的现象。本文介绍一种解决办法。 常规安装方法 最方便的安装 Cypress 方法是使用 npm,安装命令是: $ npm i cypress ---save-dev 但是这种方法也很容易碰到无法下载的现象。在某些网络环境下,从 npm 下载会遇到长时间没有响应,如下图中箭头所指: 好在 Cypress 官方提供了额外的下载方法,这个方法与 Puppeteer的下载方法类似,都是通过环境变量设置下载地址的方法。 下载地址 无论在什么系统下,Cypress 都以一个应用程序压缩包的形式存在:cypress.zip ,压缩包的内容随着系统不同而不同。 官方提供的压缩包下载地址为:https://download.cypress.io/desktop ,只要访问这个地址,就会自动检测你的操作系统,提供对应版本 cypress.zip 下载。 cypress.zip 压缩包的内容如下图所示: 上图中红色箭头所指是 Cypress 的可执行应用程序。 指定安装路径 为了能顺利安装,要避开 npm 默认下载路径 ,然后指定安装包的引用路径: 使用官方下载地址 这种方法适合第一次安装,只要把下载地址 https://download.cypress.io/desktop 赋给环境变量 CYPRESS_DOWNLOAD_MIRROR (各类系统下设置环境变量的方法见 下文),这时候再执行 npm install 时就能从环境变量中指定的官方地址下载。 指定本地路径 这种方法适合本地已经有安装包,需要反复安装的情景。只要把本地文件地址(绝对路径,精确到文件名)赋给环境变量 CYPRESS_INSTALL_BINARY ,再执行 npm install 时就能自动下载并安装。 下面来看如何在不同系统下指定环境变量。 设置环境变量 Windows CMD 在 Windows 的命令行下使用下面的命令设置 环境变量: set CYPRESS_DOWNLOAD_MIRROR=https://download.cypress.io/desktop 或者 set CYPRESS_INSTALL_BINARY=D:\\path\\to\\your\\app\\cypress.zip 顺利安装效果如下图: Windows PowerShell 在 Windows 的 PowerShell 里, set 不能用来设置 环境变量,需要改用 $env,比如说 D:>$env:CYPRESS_DOWNLOAD_MIRROR="https://download.cypress.io/desktop" 或者 D:>$env:CYPRESS_INSTALL_BINARY="D:\\path\\to\\your\\app\\cypress.zip" 顺利安装效果如下图: 在线下载安装: 指定本地路径: Linux、Mac Linux、Mac 下直接给环境变量赋值即可: $ CYPRESS_DOWNLOAD_MIRROR="https://download.cypress.io/desktop" 下载地址的其他参数 官方的 下载地址 除了基本的自动检测系统类型,还能用 URL 参数指定系统类型。参数列表如下: 参数名称 可选值 platform win32,linux,darwin arch x64,ia32 如果指定下载 64bit Windows 的Cypress,使用下面的 URL: https://download.cypress.io/desktop?platform=win32&arch=x64 真实的下载地址 官网将真实的下载地址存放在这个文件里: https://download.cypress.io/desktop.json 访问效果如下: