Я пытаюсь загрузить видеофайл через форму веб-приложения, которая сначала проанализирует длительность, разрешение и частоту кадров видео. С этой информацией видеофайл будет затем отправлен на внутренний сервер после нажатия кнопки отправки.
Я попытался загрузить видеофайл размером 100 МБ следующим образом:
Ниже приведена команда кипы uploadFile в команде support /. js.
Cypress.Commands.add('uploadFile', { prevSubject: true }, (subject, fileName, fileType = '') => {
cy.fixture(fileName,'base64', { timeout: 20000 }).then(content => {
console.log(fileName, content)
return Cypress.Blob.base64StringToBlob(content, fileType).then(blob => {
const fileInput = subject[0];
const testFile = new File([blob], fileName, {type: fileType});
const dataTransfer = new DataTransfer();
dataTransfer.items.add(testFile);
fileInput.files = dataTransfer.files;
console.log(fileInput, testFile, dataTransfer);
cy.wrap(subject).trigger('change', { force: true });
});
});
});
В спецификации c. js
cy.get('input[type=file]').uploadFile('largeVideo.mp4', 'video/mp4');
Не удалось загрузить Cypress-файл с видеофайлом 100 МБ в docker Cypress / Включено: 4.4.0 еще при локальном запуске при npx cypress run
видеофайл удалось успешно загрузить.
Ошибка Cypress была
CypressError: cy.fixture() timed out waiting 200000ms to receive a fixture. No fixture was ever sent by the server.
Подробности
Cypress версия 4.4. 0
chrome версия 80.0.3987.116
версия узла 12.13.0
В чем разница между локальной кипарисной версией и docker версией, которая вызывает это?