Этот форум был действительно полезен, так как я новичок в автоматизации и Cypress. Я также столкнулся с проблемой при попытке загрузить файл в приложение.
Я использовал приведенный ниже код в команде. js:
Cypress.Commands.add('uploadFile', { prevSubject: true }, (subject, fileName, fileType = '') => {
cy.fixture(fileName,'binary').then(content => {
return Cypress.Blob.binaryStringToBlob(content, fileType).then(blob => {
const el = subject[0];
const testFile = new File([blob], fileName, {type: fileType});
const dataTransfer = new DataTransfer();
dataTransfer.items.add(testFile);
el.files = dataTransfer.files;
cy.wrap(subject).trigger('change', { force: true });
});
});
});
А затем приведенный ниже код в тесте:
const fileName = 'comp-test-malte.mp4';
const fileType = 'video/mp4';
cy.get('input[type=file]').uploadFile(fileName, fileType);
Это работает на полпути для меня, так как показывает загрузку 0%, но получает из базы данных ошибку, указанную ниже, и файл не загружен:
"Firebase Storage: недопустимый аргумент в пут по индексу 0: ожидаемый BLOB или файл. "
Пожалуйста, помогите !!