Cypress 下载慢的解决办法

发表时间 2020-09-15
阅读2分钟

安装 Cypress 过程中,经常能遇到下载慢或者下载过程卡死的现象。本文介绍一种解决办法。

常规安装方法

最方便的安装 Cypress 方法是使用 npm,安装命令是:

$ npm i cypress ---save-dev

但是这种方法也很容易碰到无法下载的现象。在某些网络环境下,从 npm 下载会遇到长时间没有响应,如下图中箭头所指:

761.png

好在 Cypress 官方提供了额外的下载方法,这个方法与 Puppeteer的下载方法类似,都是通过环境变量设置下载地址的方法。

下载地址

无论在什么系统下,Cypress 都以一个应用程序压缩包的形式存在:cypress.zip ,压缩包的内容随着系统不同而不同。

官方提供的压缩包下载地址为:https://download.cypress.io/desktop ,只要访问这个地址,就会自动检测你的操作系统,提供对应版本 cypress.zip 下载。

cypress.zip 压缩包的内容如下图所示:

762.png

上图中红色箭头所指是 Cypress 的可执行应用程序。

指定安装路径

为了能顺利安装,要避开 npm 默认下载路径 ,然后指定安装包的引用路径:

  • 使用官方下载地址

这种方法适合第一次安装,只要把下载地址 https://download.cypress.io/desktop 赋给环境变量 CYPRESS_DOWNLOAD_MIRROR (各类系统下设置环境变量的方法见 下文),这时候再执行 npm install 时就能从环境变量中指定的官方地址下载。

  • 指定本地路径

这种方法适合本地已经有安装包,需要反复安装的情景。只要把本地文件地址(绝对路径,精确到文件名)赋给环境变量 CYPRESS_INSTALL_BINARY ,再执行 npm install 时就能自动下载并安装。

下面来看如何在不同系统下指定环境变量。

设置环境变量

Windows CMD

767.png

在 Windows 的命令行下使用下面的命令设置 环境变量:

set CYPRESS_DOWNLOAD_MIRROR=https://download.cypress.io/desktop

或者

set CYPRESS_INSTALL_BINARY=D:\\path\\to\\your\\app\\cypress.zip

顺利安装效果如下图:

763.png

Windows PowerShell

766.png

在 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"

顺利安装效果如下图:

在线下载安装:

764.png

指定本地路径:

780.png

Linux、Mac

768.png

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

访问效果如下:

765.png

本站是个人博客。除非特别说明,所有文章均系原创,并采用 署名协议 CC-BY 授权。
欢迎转载,惟请保留原文链接:/tech/cypress-download-failure/