Я написал тест, который загружает файл экспорта, но мне также нужно отправить этот файл по электронной почте. Проблема в том, что имя файла всегда отличается, и я не знаю, как его найти во время теста.
Вы можете получить динамическое загруженное имя файла из заголовка 'content-disposition'.
import { Selector, RequestLogger } from 'testcafe'; const url = 'https://demos.devexpress.com/ASPxGridViewDemos/Exporting/Exporting.aspx'; const logger = RequestLogger({ url, method: 'post' }, { logResponseHeaders: true }); fixture `Export` .page(url) .requestHooks(logger); test('export to csv', async t => { const exportToCSVButton = Selector('span').withText('Export to CSV'); await t .click(exportToCSVButton) .expect(logger.contains(r => r.response.statusCode === 200)).ok(); console.log(logger.requests[0].response.headers['content-disposition']); });