cypress-file-upload插件使得文件上传测试变得简单。这个包添加了一个定制的Cypress命令,允许您对如何通过HTML控件上传文件进行抽象,并将重点放在测试用户工作流上。
下载地址:
https://github.com/abramenal/cypress-file-upload
插件使用详情可查考:
https://www.npmjs.com/package/cypress-file-upload#it-isnt-working-what-else-can-i-try
npm install --save-dev cypress-file-upload
您需要将其添加cypress/support/commands.js
如下
import 'cypress-file-upload';
然后,确保将commands.js
导入cypress/support/index.js
(可能会被注释):
import './commands' ;
通常的做法是将Cypress测试所需的所有文件放在Cypress/fixtures文件夹中。
例如:新建test.txt文件
测试demo
/**
* Create by dell on 2021/3/20
* Author :wencheng
* 微信公众 :自动化测试 To share
* */
describe('file_upload_test',function () {
beforeEach(() => {
cy.login_auto()
})
it('upload', function() {
/* ==== Generated with Cypress Studio ==== */
cy.visit('/zentao/qa/');
cy.get('[data-id="bug"] > a').click();
cy.get('p > .btn').click();
/* ==== End Cypress Studio ==== */
cy.get("input[type='file']").attachFile('test.txt');
});
})
运行结果上传成功
切记定位的是 input[type='file']
当上传文件内容为空时,文件上传失败我们通过debug看下。
未触发文件上传
触发文件上传会预加载file内容
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值.
本文分享自 自动化测试 To share 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!