Skip to content


Repository files navigation


npm version

This is a Cypress custom file download command.

This repository is not maintained by the Cypress developers.

"Buy Me A Coffee"


Install the module.

npm install cypress-downloadfile

Add the following line to cypress/support/commands.js.


For Cypress 10 and above

Add the following lines to cypress.config.js.

const { defineConfig } = require('cypress')
const {downloadFile} = require('cypress-downloadfile/lib/addPlugin')

module.exports = defineConfig({
  // setupNodeEvents can be defined in either
  // the e2e or component configuration
  e2e: {
    setupNodeEvents(on, config) {
         on('task', {downloadFile})

For all Cypress versions below 10

Add the following lines to cypress/plugins/index.js.

const {downloadFile} = require('cypress-downloadfile/lib/addPlugin')
module.exports = (on, config) => {
  on('task', {downloadFile})

If autocompletion does not work out of the box you can add the following line above your testfile

/// <reference types="cypress-downloadfile"/>

Example of basic command


In Version 1.1.5 you can now also pass in the User-Agent. If no User-Agent is passed it will give a default User-Agent called request.


Version 1.2.0

Because request is deprecated we changed to cross-fetch. This works on Cypress 3.8.0 and upwards. If you notice problems please let me know