如何在使用Cypress时删除下载的文件 [英] How do i delete downloaded file in using cypress

查看:15
本文介绍了如何在使用Cypress时删除下载的文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试在下次文本执行之前删除下载的文件,但找不到方法 如何删除下载的文件

推荐答案

配置选项"trashAssetsBeforeRuns": true默认情况下为True,因此除非您已经更改了它,否则这不是您要寻找的答案。

请注意,它只适用于cypress run(无头)模式,REFcypress.d.ts(通过简单测试确认)。

还要注意downloadsFolder配置选项,它默认为/cypress/downloads。在项目外部,请使用完整路径。


cypress open食谱local-download-spec.js为您提供了一个示例。

测试

import { deleteDownloadsFolder } from './utils'
...
beforeEach(deleteDownloadsFolder)
...

实用程序

export const deleteDownloadsFolder = () => {
  const downloadsFolder = Cypress.config('downloadsFolder')
  cy.task('deleteFolder', downloadsFolder)
}

/cypress/plugins/index.js中的任务

const { rmdir } = require('fs')

module.exports = (on, config) => {
  
  on('task', {
    deleteFolder (folderName) {
      console.log('deleting folder %s', folderName)

      return new Promise((resolve, reject) => {
        rmdir(folderName, { maxRetries: 10, recursive: true }, (err) => {
          if (err) {
            console.error(err)
            return reject(err)
          }
          resolve(null)
        })
      })
    })
  },
})

这篇关于如何在使用Cypress时删除下载的文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆